我一直在谷歌搜索我遇到的这个问题的答案,到目前为止已经空了。
基本上,我正在创建一个错误消息数组,将它们作为数组传递给函数,循环遍历值,格式化然后返回它们。由于某种原因,值不会被传递,我得到“为foreach()提供的无效参数”错误。
//Create the error array
$error = 0;
$errorArray = array();
if(empty($_POST['amount']))
{
$error = 1;
array_push($errorArray,"Amount is required");
}
//Error Function
function makeErrors($err)
{
$output = 'ul';
foreach($err as $v)
{
$output .= '<li>'.$v.'</li>';
}
$output .= '</ul>';
return $output;
}
//Show the result
if($error == 1)
{
$theErrors = makeErrors($errorArray);
echo $theErrors;
}
如果我只是在$ errorArray上做一个普通的print_r,我会得到预期的值,所以在将数组传递给函数时会丢失一些东西。任何建议都会非常感激。
答案 0 :(得分:2)
这应该完美,你可能想要在&lt;&gt;中包装第一个“ul”虽然。
刚试过它并且在这里工作正常。