我正在尝试在数组中添加变量,但未能这样做,请帮助我。
以下是可以正常使用的原始代码
$array1 = array("a" => "green", "red", "blue");
$array2 = array("b" => "green", "yellow", "red");
$result = array_intersect($array1, $array2);
print_r($result);
并输出此
Array
(
[a] => green
[0] => red
)
但我想在数组中添加变量,因此数组从变量中获取值,但它不起作用
我在尝试什么
$a = '"green", "red", "blue"';
$b = '"green", "yellow", "red"';
$array1 = array("a" => $a);
$array2 = array("b" => $b );
$result = array_intersect($array1, $array2);
print_r($result);
我希望它像这样输出
Array
(
[a] => green
[0] => red
)
我得到的是什么
Array ( )
任何帮助将不胜感激。感谢
答案 0 :(得分:1)
您尝试过的代码是将字符串'"green", "red", "blue"'
分配给数组元素"a"
,当您看起来想要分割字符串时,"green red blue"
变为array("green","red","blue")
}
$a = "green red blue";
$array1 = split(" ",$a);
答案 1 :(得分:1)
您正在添加字符串'"绿色","红色","蓝色"'不是一个数组。在您的代码段中
$ a ='"绿色","红色","蓝色"&#39 ;; $ b ='"绿色","黄色","红色"&#39 ;; $ array1 = array(" a" => $ a); $ array2 = array(" b" => $ w);
$ result = array_intersect($ array1,$ array2); 的print_r($结果);
PHP会将$a
和$b
理解为字符串。如果您打算将数组传递给$a
和$b
,则需要将其更改为
$a = array("green", "red", "blue");
$b = array("green", "yellow", "red");
然后做你的交集。如果使用var_dump($a)
,您将看到$a
正在存储字符串变量。