php陣列方法

☆綠茶☆發表於2016-06-10

查詢、篩選與搜尋陣列元素是陣列操作的一些常見功能。下面來介紹一下幾個相關的函式。

in_array()函式

in_array()函式在一個陣列彙總搜尋一個特定值,如果找到這個值返回true,否則返回false。其形式如下:

1 boolean in_array(mixed needle,array haystack[,boolean strict]);

來看下面的例子,查詢變數apple是否已經在陣列中,如果在,則輸出一段資訊:

1 $fruit "apple";
2 $fruits array("apple","banana","orange","pear");
3 if( in_array($fruit,$fruits) )
4     echo "$fruit 已經在陣列中";

第三個引數可選,它強制in_array()在搜尋時考慮型別。

array_key_exists()函式

如果在一個陣列中找到一個指定的鍵,函式array_key_exists()返回true,否則返回false。其形式如下:

1 boolean array_key_exists(mixed key,array array);

下面的例子將在陣列鍵中搜尋apple,如果找到,將輸出這個水果的顏色:

1 $fruit["apple"] = "red";
2 $fruit["banana"] = "yellow";
3 $fruit["pear"] = "green";
4 if(array_key_exists("apple"$fruit)){
5     printf("apple's color is %s",$fruit["apple"]);
6 }

執行這段程式碼得到的結果:

1 apple's color is red

array_search()函式

array_search()函式在一個陣列中搜尋一個指定的值,如果找到則返回相應的鍵,否則返回false。其形式如下:

1 mixed array_search(mixed needle,array haystack[,boolean strict])

下面的例子在$fruits中搜尋一個特定的日期(December 7),如果找到,則返回相應州的有關資訊:

1 $fruits["apple"] = "red";
2 $fruits["banana"] = "yellow";
3 $fruits["watermelon"]="green";
4 $founded array_search("green"$fruits);
5 if($founded)
6     printf("%s was founded on %s.",$founded$fruits[$founded])

程式執行結果如下:

1 watermelon was founded on green.

array_keys()函式

array_keys()函式返回一個陣列,其中包含所搜尋陣列中找到的所有鍵。其形式如下:

1 array array_keys(array array[,mixed search_value])

如果包含可選引數search_value,則只會返回與該值匹配的鍵。下面的例子將輸出$fruit陣列中找到的所有陣列:

1 $fruits["apple"] = "red";
2 $fruits["banana"] = "yellow";
3 $fruits["watermelon"]="green";
4 $keys array_keys($fruits);
5 print_r($keys);

程式執行結果如下:

1 Array ( [0] => apple [1] => banana [2] => watermelon )

array_values()函式

array_values()函式返回一個陣列中的所有值,並自動為返回的陣列提供數值索引。其形式如下:

1 array array_values(array array)

下面的例子將獲取$fruits中找到的各元素的值:

1 $fruits["apple"] = "red";
2 $fruits["banana"] = "yellow";
3 $fruits["watermelon"]="green";
4 $values array_values($fruits);
5 print_r($values);

程式執行結果如下:

1 Array ( [0] => red [1] => yellow [2] => green )
 

 

相關文章