【发布时间】:2016-11-10 09:59:09
【问题描述】:
我正在尝试检查变量值是假还是真,这是我的代码
$print_ready_flag = $_GET['print_ready']; // i'm passing it as either true or false
echo $print_ready_flag ; // I'm getting correct value
我想做的是,
if ($print_ready_flag == false) {
file_name = "albumpdf_" . $Order['products_name'] . "_" . $OrderId . "_" . $OrderPId . ".pdf";
}
当像上面的表达式一样进行评估时,但是当我尝试时
如果 (!$print_ready_flag) {,
如果 (!(bool)$print_ready_flag)
。表达式不计算。有什么方法可以在不使用比较运算符的情况下评估表达式。
【问题讨论】:
-
在此之前尝试
if ($print_ready_flag === false) {,还要检查var_dump($print_ready_flag) -
是的,我在谷歌搜索时也看到了这个。不使用操作符还有其他方法吗?
-
我正在为该变量传递 true 或 false。所以 isset 和 empty 不起作用
-
是的,在这种情况下,
isset()将始终是 isset -
不知道你是不是没有使用运算符... 三元解决方案:
$status = ($print_ready_flag ? false : true)只是一个例子
标签: php