【发布时间】:2013-09-06 07:41:34
【问题描述】:
我早些时候发布了这个问题,但这里是完整版。
我正在尝试合并两个数组。 Eating Array(目前没有任何内容)和 Dairy Array(因为用户在单独的 html 页面上对 Dairy 勾选了是)。
但是,当我将这两个组合成一个新数组 ($newArray) 时,会发生以下错误:
Warning: Invalid argument supplied for foreach() in
/home/****/****/website.php on line 65
第 65 行在 cmets 中标识。
<?php
$EatingArray=array();
echo "<p>";
$DrinksArray = array(
'a' => 'Coca Cola',
'b' => 'Fanta',
'c' => 'Sprite',
);
$FoodArray = array(
'd' => 'Hamburger',
'e' => 'Pie',
'f' => 'Chips',
);
$SweetsArray = array(
'g' => 'Musk Sticks',
'h' => 'Maltesers',
'i' => 'M&Ms',
);
$DairyArray = array(
'j' => 'Milk',
'k' => 'Yoghurt',
'l' => 'Cheese',
);
if ($_POST['DairyCheckBox'] == 'yes')
{
$newArray = array_merge($EatingArray, $DairyArray);
}
foreach ($newArray as $key => $value) //LINE 65
{
echo $value;
}
echo "<p>";
?>
提前感谢您的帮助。
安德鲁
【问题讨论】:
-
$newArray似乎没有初始化,请尝试以$newArray = array()开头。如果您没有警告,则($_POST['DairyCheckBox'] == 'yes')的条件为假。