将具有未知大小的数组传递给函数

时间:2011-07-13 20:02:16

标签: php

我一直在谷歌搜索我遇到的这个问题的答案,到目前为止已经空了。

基本上,我正在创建一个错误消息数组,将它们作为数组传递给函数,循环遍历值,格式化然后返回它们。由于某种原因,值不会被传递,我得到“为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,我会得到预期的值,所以在将数组传递给函数时会丢失一些东西。任何建议都会非常感激。

1 个答案:

答案 0 :(得分:2)

这应该完美,你可能想要在&lt;&gt;中包装第一个“ul”虽然。

刚试过它并且在这里工作正常。