Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在数组中搜索特定字符串_Php_Arrays_Search - Fatal编程技术网

Php 在数组中搜索特定字符串

Php 在数组中搜索特定字符串,php,arrays,search,Php,Arrays,Search,我试图从数组中输出一个特定的值,但是每次运行数组时,该值都位于不同的位置,如下所示: 在一页上: Array ( [id] => 12445 [countries] => Array ( [0] => Array ( [iso_3166_1] => GB [certification] => 12A

我试图从数组中输出一个特定的值,但是每次运行数组时,该值都位于不同的位置,如下所示:

在一页上:

Array
(
    [id] => 12445
    [countries] => Array
        (
            [0] => Array
                (
                    [iso_3166_1] => GB
                    [certification] => 12A
                    [release_date] => 2011-07-07
                )

            [1] => Array
                (
                    [iso_3166_1] => US
                    [certification] => PG-13
                    [release_date] => 2011-07-15
                )

            [2] => Array
                (
                    [iso_3166_1] => DE
                    [certification] => 12
                    [release_date] => 2011-07-12
                )
}
另一页:

Array
(
    [id] => 673
    [countries] => Array
        (
            [0] => Array
                (
                    [iso_3166_1] => US
                    [certification] => PG
                    [release_date] => 2004-06-04
                )

            [1] => Array
                (
                    [iso_3166_1] => GB
                    [certification] => PG
                    [release_date] => 2004-05-31
                )

            [2] => Array
                (
                    [iso_3166_1] => IT
                    [certification] => T
                    [release_date] => 2004-06-04
                )
}
如您所见,一个页面上的“GB”字符串位于数组中的位置0,而另一个页面上的“GB”字符串位于位置1。现在,这段代码部署到的页面是动态的,所以我不能只是硬编码
$array['countries'][0]['release\u date']
,其中'release\u date'是我想从数组中提取的实际值,所以我想我需要代码在数组中搜索'GB'(或'US',或任何需要返回的国家),找到包含字符串的索引号,并将其作为$uk\u release\u date或某个命名变量动态地放入查询中


提前谢谢

嗨,亚历克斯,看看这个话题:谢谢,这是我尝试的第一个解决方案,它工作得非常好!
$index = -1;

foreach($array['countries'] as $k=>$v) {
  if(array_search('GB', $v)) { // Search for GB
    $index = $k;
    break;
  }
}

echo $array['countries'][$index]['release_date']; // This will be the release date for GB