考慮以下幾點:從AJAX'd PHP腳本返回/過濾值的正確方法?
<?php
//daytime_check.php
$is_daytime = false;
if ($is_daytime) {
echo '1';
} else {
echo '0';
}
?>
===================================== =============================================
// javascript/jQuery
$.ajax({
type: 'POST',
url: 'daytime_check.php',
success: function(response) {
if(response == false) {
alert('Goodnight, brother');
} else {
alert('Day\'s a wastin, brother');
}
},
error: function() {
//handle error
}
});
這是我迄今爲止處理來自AJAX'd PHP腳本的響應。我希望有人能以更好的方式給我一些提示,因爲這種方法感覺很笨拙。
特別笨重的是處理JS腳本輸出的「過濾」。例如:
在這種情況下,來自PHP的響應將是JS var response ='0'
。現在人們不能簡單地在JS中使用if (!response)...
來過濾,因爲顯然!response
評估爲false
,而有趣的是,response == false
評估爲true
。我想,與玩雜耍有關。
由於我從PHP返回的東西的唯一方法是在文本(echo
語句)中,當我到達JS端時,我無法返回正確的真/假值來過濾。有沒有更好的方法來處理這個問題?
我希望這至少有一點意義。
我喜歡這樣。另外有趣的是,當從PHP返回值時,如何使用'die()'。這只是爲了消除內存問題的腳本? – eysikal 2012-03-27 19:40:28
那麼你可以使用'echo'或'print',不管。我更喜歡'死',因爲這樣我可以確定我只輸出JSON,之後腳本將關閉。 – dfsq 2012-03-27 20:53:30
我喜歡這個想法。我以前沒看過它。似乎很有道理。 – eysikal 2012-03-27 20:57:14