PHP检查POST方法是否包含其中一个值


PHP Check if POST method contains one of values

你能帮我解决这样的问题吗:我需要检查$_POST中传递的数组中是否包含一些特定值,如果是,则执行一些操作。。目前我有:

$count=count($_POST['prcategory']);
if(implode($_POST['prcategory']) == "'Cost Collection'" && $count=1 ){
  ...do stuff
}
elseif (implode($_POST['prcategory']) == "'Cost Collection'" && $count > 1 )
{
  ...do other stuff
}
else {.... }

但出于未知的原因,当计数>1时,它总是转到最后一个else选项——很可能是因为我不知道如何正确检查POST值中是否包含我需要的值。。

对此有什么建议吗?

p.s.所有值都用引号传递,例如,我在"成本收集"中有引号是可以的

使用simple-if-else

注意:$_POST['parcegory']应该是一个数组(),否则in_array将不起的作用

    if(isset($_POST['prcategory'])) {
     $count = count($_POST['prcategory']);
     $data = $_POST[prcategory];
     if (in_array("'Cost Collection'", $data)) { // 'Cost Collection' is the value to check in array $data u can use any value
            if ($count == 0 ) {
                //do stuff.......
            }elseif($count > 1)  {
                  //do stuff.......
            }else {
                //do stuff.......
            }
     }else {
            //do stuff.......
          }
   }

尝试

if(isset($_POST['prcategory']))
{
   // do stuff...
}