>  기사  >  백엔드 개발  >  php-关于PHP中usort函数中,数值传递问题

php-关于PHP中usort函数中,数值传递问题

WBOY
WBOY원래의
2016-06-02 11:31:221404검색

phpphp函数原理求php高手

PHP手册中usort语法形式为 bool usort (array &array ,callback $cmp_function) 
请问 下例中 自定义函数中的$str1和$str2是按照什么顺序来接收数组中传来的数值,并怎么通过1,-1 ,0来排序?谢谢! 
例子:(把一个数组按照奇偶分开,再按照大小排列) 

if (($str1%2 == 0) && ($str2 == 0)){
if($str1>$str2) return -1; else return 1; }
if ($str1 %2 ==0) return 1;
if ($str2 %2 ==0) return -1;
return ($str2>$str1)? 1: -1; } $scores=array(64,78,51,86,97,60,87,91,100,17,62); usort($scores, 'Compare');
print_r($scores);
?>

这是输出结果: 
Array([0] => 97 [1] => 91 [2] => 87 [3] => 51 [4] => 17 [5] => 86 [6] => 64 [7] => 78 [8] => 100 [9] => 60 [10] => 62)

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.