[英]PHP arrays: How to get the index where an element is
這是以下數組:
Array
(
[1] => Array
(
[0] => 10
[1] => 13
)
[2] => Array
(
[0] => 8
[1] => 22
)
[3] => Array
(
[0] => 17
[1] => 14
)
)
那我有
$chosenNumber = 17
我需要知道的是:
首先)如果數組中有17
其次)它具有的密鑰(在這種情況下為[0])
第三)它所屬的索引(在本例中為[3])
我本打算使用in_array函數來解決第一步,但似乎只適用於字符串..
萬分感謝!
function arraySearch($array, $searchFor) {
foreach($array as $key => $value) {
foreach($value as $key1 => $value1) {
if($value1 == $searchFor) {
return array("index" => $key, "key" => $key1);
}
}
}
return false;
}
print_r(arraySearch($your_array, 17));
您應該使用以下命令:
in_array()
array_search()
您已使用array_search函數
$qkey=array_search(value,array);
您使用array_search :
$index = array_search($chosenNumber, $myArray);
if($index){
$element = $myArray[$index];
}else{
// element not found
}
如果找不到元素,則array_search返回false,否則返回您正在尋找的元素的索引。
如果一個值多次在數組中,則僅返回第一個match的鍵 。 如果需要所有匹配項,則需要將array_keys與指定的可選search_value參數一起使用:
$indexes = array_keys($myArray, $chosenNumber);
這將返回一個包含您的搜索值的所有索引的數組(可能為空)。
array_keys()
array_values()
array_key_exists()
in_array()
您可以在這里找到更多信息http://www.php.net/manual/en/function.array-search.php
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.