如何将变量合并到数组中,同时保留变量名称作为键


How to merge variables into an array while retaining the variable name as key

我有一个数组:

$countries = array( 
 "af" => "Afghanistan",
 "ax" => "Åland Islands",
 "al" => "Albania",
 "dz" => "Algeria"
);

和一些变量:

$as = "American Samoa";
$ad = "Andorra";

如何将变量组合到数组中,同时将变量名称保留为数组中的键?

您可以使用

compact从变量中创建一个数组,然后简单地将两个数组相加:

$countries += compact('as', 'ad');

看到它的实际效果

foreach(array('as','ad') as $name){
  $countries[$name] = $$name;
}