你能帮我解决这样的问题吗:我需要检查$_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...
}