簡體   English   中英

PHP:在數組中搜索值並顯示鍵

[英]PHP: search for values in the array and display the key

我有結構如下的數組。

Array
(
    [example1] => Array
        (
            [0] => 'banana'
        )

    [example2] => Array
        (
            [0] => 'orange'
            [1] => 'apple'
            [2] => 'plum'
            [3] => 'watermelon'
            [4] => 'pumpkin'
        )

    [example3] => Array
        (
            [0] => 'cherry'
            [1] => 'strawberry'
        )

)

我正在嘗試顯示示例值的鍵名。

例如。 尋找一個值:' apple ' - 結果:' example2 '

只需遍歷所有子數組並返回父鍵。

$array = [
    'example1' => ['banana'],
    'example2' => ['orange', 'apple', 'plum', 'watermelon', 'pumpkin'],
    'example3' => ['cherry', 'strawberry']
];

$needle = 'apple';
$result = '';
foreach($array as $parentKey => $child) {
    if(in_array($needle, $child)) {
        $result = $parentKey;
        break;
    }
}

echo $result;

示例2

只需循環您的 arrays 並檢查元素是否存在:


function search(string $search, array $source) {
    foreach ($source as $key => $sub) {
        if (in_array($search, $sub)) {
            return $key;
        }
    }
}

search('apple', $source);

這也是一個很好的例子,謝謝。 我在此基礎上構建了我的 function

function CheckArray($my_array,$search) {
$result = array_keys(array_filter($my_array, function ($arr) use ($search) {
return in_array($search, $arr);
}));
if(isset($result[0])){
    return $result[0];
}else{
    return "not find";
}

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM