检查多个帖子参数以查看它们是否存在

时间:2017-10-24 11:27:55

标签: php

所以我正在尝试在PHP中编写一个函数,它实际上将枚举我在函数参数中声明的POST参数列表。

       case "send":
            if($this->checkPostParams(array('number', 'subject', 'amount', 'message')))
            {
                die("success");
            }
        break;

这部分是函数调用的地方,我尝试将POST参数数组解析为函数的参数。

private function checkPostParams($x)
{
    $status = 0;

    for($i = 0; $i < sizeof($x); $i++)
    {
        if(!isset($_POST[$i])) $status++;
    }

    return ($status == 0);
}

这里是一个被调用的函数,我通过POST参数使用 isset 枚举来检查参数是否存在,只要数组中不存在一个参数我在for循环之外增加一个变量,这将允许在函数结束时进行布尔输出和比较。

它似乎根本不起作用,我不知道为什么。

1 个答案:

答案 0 :(得分:0)

在此函数checkPostParams()中,您传递的数组包含数字,主题等...

   case "send":
        if($this->checkPostParams(array('number', 'subject', 'amount', 'message')))
        {
            die("success");
        }
    break;

if(!isset($_POST[$i])) $status++;此行将检查帖子中$i的索引是否为整数值。您在$x变量中获取了所有字段名称,因此您必须检查$_POST[$x[$i]]。这里$x包含数字,主题等值。$i是一个整数。如果您在$i中添加索引$x,则会在$_POST中获取值并使用该值。

if(!isset($_POST[$x[$i]])) $status++;