<?PHP
$number = array(array('tir','tire','100'),
array('Oil','oil','50'),
array('spk','spark','10'));
function compare($x,$y){
if($x[1]==$y[1]){
return 0;}
else if($x[1]<$y[1]){
return -1;
}
else{
return 1;}
}
usort($number,'compare');
print_r($number);
?>
那个function函数是什么意思 看不懂 哪些返回值是怎么回事 原理究竟是什么 请高手详细讲解一下 小弟刚学PHP
$number = array(array('tir','tire','100'),
array('Oil','oil','50'),
array('spk','spark','10'));
function compare($x,$y){
if($x[1]==$y[1]){
return 0;}
else if($x[1]<$y[1]){
return -1;
}
else{
return 1;}
}
usort($number,'compare');
print_r($number);
?>
那个function函数是什么意思 看不懂 哪些返回值是怎么回事 原理究竟是什么 请高手详细讲解一下 小弟刚学PHP
按member的子元素的第二个值进行排序!好像是升序
array('tir1','tire2','100'),
array('Oil1','oil2','50'),
array('spk1','spark2','10')
);
function compare($x,$y){
if($x[1]==$y[1]){
return 0;
} else if($x[1]<$y[1]){
//可以输出来看一下
//var_dump($x[1]);
//var_dump($y[1]);
//echo 22;
return -1;
}else{
return 1;
}
}
//echo '<pre>';
usort($number,'compare');
print_r($number);
// 函数compare 是比较函数 , 也就是把$number数组值代入compare这个函数中进行比较,根据比较的结果,重新排序这个$number数组的内部值//首先比较的是$x[1]==$y[1]//也就是oil2 跟 tire2 进行比较 ,显然他们的值不一样,于是进行$x[1]<$y[1] 比较,明显oil2 与tire2 //oil的首字线在tire的首字母前,显然返回-1,也就是要把array('Oil1','oil2','50')排在array('tir1','tire2','100')前,接着是spark2与tire2进行比较,同理,结果返回-1,也就是要把 array('spk1','spark2','10') 排在array('tir1','tire2','100')前,最终$number中的排序为 $number = array(array('Oil1','oil2','50') ,array('spk1','spark2','10'),array('tir1','tire2','100') );