PHP:搜索数组中的值并显示键

我有结构如下的数组。


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 '


桃花长相依
浏览 103回答 3
3回答

四季花海

只需循环数组并检查元素是否存在:function search(string $search, array $source) {    foreach ($source as $key => $sub) {        if (in_array($search, $sub)) {            return $key;        }    }}search('apple', $source);

慕哥6287543

只需迭代所有子数组并返回父键即可。$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

蓝山帝景

这也是一个很好的例子,谢谢。我在此基础上构建了我的功能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";}}
打开App,查看更多内容
随时随地看视频慕课网APP