cbk*_*k38 0 php arrays foreach loops
我有两个数组:
$array1 = array("red", "blue", "green", "yellow");
$array2 = array("one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten");
Run Code Online (Sandbox Code Playgroud)
我想随机回显一种颜色的10倍。
我尝试使用foreachloop和进行操作shuffle,但尝试此操作时出现错误:
数组到字符串的转换.....
这是我的代码:
shuffle($array1);
foreach($array2 as $array2) {
echo $array1;
}
Run Code Online (Sandbox Code Playgroud)
请有人能帮我解决这个问题吗?
你在数组变量和它们的元素之间乱七八糟。
首先,您不能执行此操作,echo $array1;因为变量是数组,而echo是字符串。其次,foreach($array2 as $array2)将其重新分配$array2为两个元素,以便将原始数组弄乱。
更好的方法是使用array_rand:
foreach(range(1,10) as $v) {
echo $array1[array_rand($array1)] . PHP_EOL;
}
Run Code Online (Sandbox Code Playgroud)