<?php
function
changeVar()
{
$a
= '123';
$b
= '456';
list(
$a
,
$b
) =
array
(
$b
,
$a
);
echo
$a
. '-' .
$b
;
}
function
fileLock()
{
$fp
=
fopen
('./tmp.txt', 'w+');
if
(
flock
(
$fp
, LOCK_EX)) {
fwrite(
$fp
, 'write something\n');
flock
(
$fp
, LOCK_UN);
}
else
{
echo
"can't lock!"
;
}
fclose(
$fp
);
}
function
getExtName(
$url
)
{
$path_info
=
pathinfo
(
$url
);
$ext_name
=
$path_info
['extension'];
echo
$ext_name
;
}
function
fibonacci(
$n
)
{
$return
= 1;
if
(
$n
<= 0) {
$return
= 0;
}
elseif
(
$n
<= 2) {
$return
= 1;
}
else
{
$return
= fibonacci(
$n
- 2) + fibonacci(
$n
- 1);
}
return
$return
;
}
function
numFormat(
$num
)
{
$num
=
strrev
(
$num
);
$num
=
str_split
(
$num
, 3);
$num
= implode(',',
$num
);
$num
=
strrev
(
$num
);
return
$num
;
}
function
bubble_sort(&
$arr
)
{
$len
=
count
(
$arr
);
for
(
$i
= 0;
$i
<
$len
;
$i
++) {
for
(
$j
= 1;
$j
<
$len
-
$i
;
$j
++) {
if
(
$arr
[
$j
- 1] >
$arr
[
$j
]) {
$tmp
=
$arr
[
$j
];
$arr
[
$j
] =
$arr
[
$j
- 1];
$arr
[
$j
- 1] =
$tmp
;
}
}
}
}
function
quickSort(
$arr
)
{
$len
=
count
(
$arr
);
if
(
$len
<= 1) {
return
$arr
;
}
$base
=
$arr
[0];
$left_array
=
array
();
$right_array
=
array
();
for
(
$i
= 1;
$i
<
$len
;
$i
++) {
if
(
$arr
[
$i
] >
$base
) {
$left_array
[] =
$arr
[
$i
];
}
else
{
$right_array
[] =
$arr
[
$i
];
}
}
$left_array
= quickSort(
$left_array
);
$right_array
= quickSort(
$right_array
);
return
$left_array
;
}
function
array_sort(
$arr
,
$keys
,
$order
= 'ASC')
{
if
(!
is_array
(
$arr
)) {
return
false;
}
$keysvalue
=
array
();
foreach
(
$arr
as
$k
=>
$v
) {
$keysvalue
[
$k
] =
$v
[
$keys
];
}
if
(
$order
== 'ASC') {
asort(
$keysvalue
);
}
else
{
arsort(
$keysvalue
);
}
reset(
$keysvalue
);
foreach
(
$keysvalue
as
$k
=>
$v
) {
$keysort
[
$k
] =
$k
;
}
foreach
(
$keysort
as
$k
=>
$v
) {
$new_arr
[] =
$arr
[
$v
];
}
return
$new_arr
;
}
function
array_sort2(&
$arr
,
$keys
,
$order
= SORT_ASC)
{
array_multisort
(array_column(
$arr
,
$keys
),
$order
,
$arr
);
}
function
bin_sch(
$arr
,
$low
,
$top
,
$target
)
{
sort(
$arr
);
while
(
$low
<=
$top
) {
$mid
=
floor
((
$low
+
$top
)/2);
if
(
$arr
[
$mid
] ==
$target
) {
return
$arr
[
$mid
];
}
elseif
(
$arr
[
$mid
] <
$target
) {
$low
=
$mid
+ 1;
bin_sch(
$arr
,
$low
,
$top
,
$target
);
}
else
{
$top
=
$mid
- 1;
bin_sch(
$arr
,
$low
,
$top
,
$target
);
}
}
return
-1;
}
function
my_scandir(
$dir
)
{
$files
=
array
();
if
(
$handle
= opendir(
$dir
)) {
while
((
$filename
= readdir(
$handle
)) !== false) {
if
(
$filename
!= '.' &&
$filename
!= '..') {
if
(
is_dir
(
$dir
.
"/"
.
$filename
)) {
$files
[
$filename
] = my_scandir(
$dir
.
"/"
.
$filename
);
}
else
{
$files
[] =
$filename
;
}
}
}
closedir
(
$handle
);
return
$files
;
}
}
function
change(
$str
)
{
$str
= ucwords(
$str
, '_');
return
str_replace
('_', '',
$str
);
}
function
convert(
$input
) {
$arr
=
explode
(
" "
,
$input
);
array_walk
(
$arr
,
function
(&
$value
) {
$value
=
strrev
(
$value
);
});
$output
= implode(
" "
,
$arr
);
echo
$output
;
}