要求:根据数组1的每个值,在数组2中匹配并输出相应的country_name

// 数组1
$array1 = ["中国", "美国"];

// 数组2
$array2 = [
    ["id" => "1", "country_name" => "中国"],
    ["id" => "2", "country_name" => "美国"]
];

PHP方法:

// 创建一个空数组来存储匹配结果
$result = [];

// 遍历数组1
foreach ($array1 as $country) {
    // 在数组2中查找匹配的country_name
    foreach ($array2 as $item) {
        if ($item['country_name'] === $country) {
            // 如果匹配成功,将id和country_name存入结果数组
            $result[] = [
                'id' => $item['id'],
                'country_name' => $country
            ];
            break; // 找到匹配项后跳出内层循环
        }
    }
}

// 输出结果
print_r($result);

代码解释:

  1. 数组1:包含要匹配的国家名称。

  2. 数组2:包含多个关联数组,每个关联数组包含idcountry_name

  3. 遍历数组1:对于数组1中的每个国家名称,遍历数组2以查找匹配的country_name

  4. 匹配成功:如果找到匹配项,将idcountry_name存入结果数组$result中。

  5. 输出结果:使用print_r函数输出匹配结果。

输出结果:

Array
(
    [0] => Array
        (
            [id] => 1
            [country_name] => 中国
        )

    [1] => Array
        (
            [id] => 2
            [country_name] => 美国
        )
)

这个代码会根据数组1中的每个国家名称,在数组2中找到对应的id,并将结果存储在$result数组中。