为什么同样的输入给同样的函数,出来结果不一样?
大家帮忙看一下,两次分别给函数输入数组,两次输入的数组用print_r打印出来看着是一样的,但是经过一个简单的函数之后出来结果就不一样了。看下面的代码和输出:
function getKey($arr) {<br /> return $arrKey = array_keys($arr, 'aa');<br />}<br /><br />$testArr = array('0'=>'XX','aa'=>'XX','1'=>'YY','bb'=>'YY','2'=>'ZZ','cc'=>'ZZ');<br />$array1 = array_keys($testArr);<br />$array2 = array('0', 'aa', '1', 'bb', '2','cc');<br /><br />print_r($array1);<br />echo '<br>';<br />print_r($array2);<br />echo '<br>';<br />print_r(getKey($array1));<br />echo '<br>';<br />print_r(getKey($array2));
return $arrKey = array_keys($arr, 'aa',true);
<?php<br /> function getKey($arr) {<br /> return $arrKey = array_keys($arr, 'aa');<br /> }<br /><br /> $testArr = array('0'=>'XX','aa'=>'XX','1'=>'YY','bb'=>'YY','2'=>'ZZ','cc'=>'ZZ');<br /> $array1 = array_keys($testArr);<br /> $array2 = array('0', 'aa', '1', 'bb', '2','cc');<br /><br /> var_dump($array1);<br /> echo '<br>';<br /> var_dump($array2);<br /> echo '<br>';<br /> print_r(getKey($array1));<br /> echo '<br>';<br /> print_r(getKey($array2));<br /> echo '<br>';<br /><br /> $arr = array(0,'xx',0,'bb');<br /> print_r(array_keys($arr, 'aa'));<br />?>