是否有PHP功能可以做到这一点?

时间:2011-03-15 21:24:42

标签: php function

我刚为我正在处理的项目写了这个函数:

function valuesValid()
{
    $argCount = func_num_args();

    for ($i = 0; $i < $argCount; $i++)
    {
        $currentArg = func_get_arg($i);

        if (!isset($currentArg) || empty($currentArg))
            return false;
    }

    return true;
}

这似乎是之前可能已经实施过的东西所以我想知道是不是这样。

4 个答案:

答案 0 :(得分:1)

这不是必要的验证,因为许多输入字段在许多表单上都是空的。

验证没有一般形式,因此验证没有通用功能。你应该为此实现自己的逻辑。

请记住,仅检查非空值并不是令人满意的验证。

答案 1 :(得分:1)

好像你的功能完全和&amp;&amp;操作员给我

$value1 = valuesValid($a, $b, $c);

$value2 = $a && $b && $c;

var_dump($value1 === $value2);

答案 2 :(得分:0)

如果理解正确,它会检查传递给函数的值是否设置正确,并且不为空。

好吧,我认为简单的func_get_args()会获得所有的值,而foreach()会更简单。

答案 3 :(得分:0)

如果这是它的目的,你应该命名你的函数values_filled()isset()内的empty()检查是多余的,只有strlen检查才有意义。通常,您希望使用if (values_filled($_POST["field"], $_POST["form"], $_POST["text"])) { 来检查表单字段是否存在。

if ($_POST["field"] && $_POST["form"] && $_POST["text"]) {

正如评论中所述,此时您已经收到了关于缺少字段的通知。但是整个如果可以写成:

{{1}}