Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/249.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 - Fatal编程技术网

PHP搜索数组

PHP搜索数组,php,Php,我正在创建一个联系人表单,需要根据输入的邮政编码更改sendto地址 我有一个可以搜索的邮政编码数组,这样我就知道输入的邮政编码是否在数组中 以下是我如何通过数组进行搜索: $districts = json_decode('{ "district" : [ { "name": "District A", "email": "abc@example.com", "url": "district-a", "postalcodes": ["3311AA","3311AB"] }, { "na

我正在创建一个联系人表单,需要根据输入的邮政编码更改sendto地址

我有一个可以搜索的邮政编码数组,这样我就知道输入的邮政编码是否在数组中

以下是我如何通过数组进行搜索:

$districts = json_decode('{
 "district" : [ 
 { "name": "District A", "email": "abc@example.com", "url": "district-a", "postalcodes": ["3311AA","3311AB"] },
 { "name": "District B", "email": "xyz@example.com", "url": "district-b", "postalcodes": ["3317EA","3317EB","3317EC"] },
 ]
}',true);

$results = array_filter($districts['district'], function($district) {
    $key = array_search('3311AB', $district['postalcodes']);
  return $key;
});

var_dump($results);
现在我需要返回电子邮件地址,根据找到邮政编码的地区


例如,如何搜索邮政编码
3311AB
并返回其所属地区的电子邮件地址?

您需要返回
$district['email']

$emails = [];

foreach ($districts['district'] as $district) {
    if (in_array('3311AB', $district['postalcodes'])) {
        $emails[] = $district['email'];
    }
}

var_dump($emails);

您需要返回
$district['email']

$emails = [];

foreach ($districts['district'] as $district) {
    if (in_array('3311AB', $district['postalcodes'])) {
        $emails[] = $district['email'];
    }
}

var_dump($emails);

您的json不正确,因此json_decode返回false。删除逗号
[“3317EA”,“3317EB”,“3317EC”]},
@Dev我想这只是因为修剪了JSON结构OK)我刚刚尝试运行,但出现错误您的JSON不正确,因此JSON解码返回false。删除逗号
[“3317EA”,“3317EB”,“3317EC”]},
@Dev我想这只是因为修剪过的JSON结构OK)我刚刚尝试运行,但出现了错误非常感谢,这正是我需要的:)干杯!非常感谢,这正是我所需要的:)干杯!