2016-11-10 74 views
0

我想檢查變量值是否爲虛假或真實的,這裏是我的代碼如果沒有變工況不工作

$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){,

if(!(bool)$ print_ready_flag)

。表達式不評估。有沒有什麼方法可以用比較運算符來評估表達式。

+1

不是試圖'如果($ print_ready_flag ===假){'在此之前,還檢查'的var_dump($ print_ready_flag)' – devpro

+0

是啊,我看到這個太當我搜索在谷歌。有沒有其他方式沒有使用操作員? – Anju

+1

我傳遞了該變量的true或false。所以isset和empty不起作用 – Anju

回答

1

那麼你的所有條件都很好看。您必須在代碼中添加php`error_reporting(),這將幫助您查找語法和警告。

您在這裏有一個錯字:

// missing $ sign 
file_name = "albumpdf_" . $Order['products_name'] . "_" . $OrderId . "_" . $OrderPId . ".pdf"; 

而且它能夠更好地使用print_ready=0而不是print_ready=false$_GET。 否則,您必須需要===檢查value+dataType

+1

謝謝。有效。 – Anju

+0

@Anju:很高興幫助你 – devpro

1
$print_ready_flag = $_GET['print_ready']; 

echo $print_ready_flag ; // I'm getting correct value 
$print_ready_flag = filter_var($print_ready_flag, FILTER_VALIDATE_BOOLEAN); 
if ($print_ready_flag == false) { 
    file_name = "albumpdf_" . $Order['products_name'] . "_" . $OrderId . "_" . $OrderPId . ".pdf"; 
} 
+0

它正在工作。謝謝你的努力 – Anju