一、陣列的洗掉——unset()函式
示例如下:
<?php //定義二維陣列 echo '這是一個二維陣列<br>'; $array1 = array( array('username'=>'Aka','address'=>'湖南衡陽', 'age'=>20,'major'=>'IT','Email'=>"[email protected]"), array('username'=>'Wunder','address'=>'LEC', 'age'=>23,'major'=>'IT','Email'=>"[email protected]"), array('username'=>'Caps','address'=>'LCS', 'age'=>21,'major'=>'IT','Email'=>"[email protected]"), array('username'=>'Facker','address'=>'LCK', 'age'=>22,'major'=>'IT','Email'=>"[email protected]") ); echo '<pre>'; print_r($array1); echo '<hr/>'; echo '以下是洗掉元素后的陣列結構','<br>'; //使用unset()函式完成資料的洗掉 unset($array1[2]);//洗掉建名為2的陣列元素 echo '<pre>'; print_r($array1); echo '</pre>';

unset()函式可以洗掉指定鍵名的元素,也可以洗掉整個陣列

二、陣列運算子


三、陣列的查找
1.順序查找
<?php function search($arr,$find){ foreach($arr as $k => $v){ if($find == $v) return "{$find}在陣列中的鍵名為:$k"; } return '查找失敗'; } $array = [1,2,3,4,5,6,7,8]; echo search($array,4);

2.二分查找(是一種針對有序陣列的一種查找方法,查詢效率高)
<?php //遞回二分查找(又稱折半查找) function binarySearch($arr,$find,$left,$right){ static $index = -1; if($left>$right){ //回傳-1說明查找失敗 return $index; } //向下取整 $mid = floor(($left+$right)/2); //要找的值小于$arr[$mid]的值,說明在陣列的左邊 if($find < $arr[$mid]){ //如果$middle不-1,則挑不出去,會一直遞回下去 $right = $mid-1; binarySearch($arr,$find,$left,$right); } //要找的值大于$arr[$mid]的值,說明在陣列的右邊 elseif($find > $arr[$mid]){ $left = $mid+1; binarySearch($arr,$find,$left,$right); }else{ $index = $mid; } return $index; } $array = [1,5,8,12,21,56,76,99]; //獲取陣列的長度 $length= count($array); $end = $length-1; echo binarySearch($array,990,0,$end),'<br>'; echo binarySearch($array,99,0,$end),'<br>';

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/122660.html
標籤:PHP
