我有以下声明,已经汇总。我想知道如何在一个案例中显示两个变量。
如图所示,当满足date_avl和pro_qty的条件时,我希望pro_st为= 0,但不确定编码的正确方法。
case $insert_pro :
case $pro_exists_row['date_aval'] == '0000-00-00' : and $sql_data['pro_qty'] == 0 :
case $sql_data['pro_date_avl'] > date('Y-m-d') :
$sql_data['pro_st'] = '0' ;
break ;
default :
$sql_data['pro_st'] = '1' ;
任何建议都将不胜感激。
答案 0 :(得分:1)
您只能使用switch语句来检查一个var的值,而不是像您尝试的那样检查复合条件。您可能需要使用if语句。
答案 1 :(得分:1)
您看起来需要if或elseif语句:
if (( $pro_exists_row['date_aval'] == '0000-00-00' && $sql_data['pro_qty'] == 0 ) || $sql_data['pro_date_avl'] > date('Y-m-d'))
{
// This is the first two conditions of you case statement - either of the conditions are met
$sql_data['pro_st'] = '0' ;
}
else
{
// This is he default as neither of the others were met...
$sql_data['pro_st'] = '1' ;
}