使用 array_search()
方法在數組中查找一個值,若是找到了該值,返回相應的鍵;不然返回 false
:php
<?php $arr = ['Hello', 'World', 'p' => 'PHP', 'Node.js']; $position = array_search('PHP', $arr); if($position !== false) { echo $position; }
輸出 p。注意:最好使用 array_search()
而不是 in_array()
來檢查一個數組是否包含某個值,兩者速度差異很小,可是 array_search()
能夠提供額外信息(相應的鍵)。數組
使用 array_filter()
方法處理數組,例如查找票房大於兩千五百萬的電影信息:函數
<?php $movies = [ ['file'=>'Zootopia', 'box_office_gross'=>73700000], ['file'=>'London Has Fallen', 'box_office_gross'=>21710000], ['file'=>'Deadpool', 'box_office_gross'=>311160000], ['file'=>'Whiskey Tango Foxtrot', 'box_office_gross'=>7600000] ]; $flops = array_filter($movies, function($movie) { //使用匿名的回掉函數過濾數組中的單元 return ($movie['box_office_gross'] > 25000000) ? 1 : 0; //須要保留的值返回1,刪除的值返回0 }); print_r($flops);
輸出:.net
Array ( [0] => Array ( [file] => Zootopia [box_office_gross] => 73700000 ) [2] => Array ( [file] => Deadpool [box_office_gross] => 311160000 ) )
<?php echo '<pre>'; $arr = [10, 3, 25, -9, 100, 50]; /*例1 使用max()找出數組中最大值的元素*/ echo max($arr),PHP_EOL; // 輸出 100 /*例2 使用min()找出數組中最小值的元素*/ echo min($arr),PHP_EOL; //輸出-9 /*例3 使用array_keys()找出數組中最大值元素的索引*/ print_r(array_keys($arr, max($arr), true)); //輸出 Array([0] => 4)