我發現這個PHP代碼片段:什麼是和如何使用'<<< END_JAVASCRIPT'字符串?
$sJavascript = <<<END_JAVASCRIPT
var callback = arguments[arguments.length-1],
nIntervalId;
function checkDone() {
if(window.MY_STUFF_DONE) {
window.clearInterval(nIntervalId); // stop polling
callback("done"); // return "done" to PHP code
}
}
nIntervalId = window.setInterval(checkDone, 50); // start polling
END_JAVASCRIPT;
$sResult = $session->execute_async(array(
'script' => $sJavascript,
'args' => array(),
));
那是什麼「END_JAVASCRIPT」字符串以及如何和何時應該使用(?)? P.S.我試圖運行這段代碼,但在PHP中出現了一個解析錯誤('unexpected $ end')。
UPDATE: 原因我正在解析錯誤是,我縮進代碼(包括結束標識符「END_JAVASCRIPT」)。 PHP的heredoc文檔包含以下警告:
需要注意的是結束標識符的行必須包含任何其它字符,除了可能分號是很重要的()。這意味着特別是標識符可能不會縮進,並且在分號之前或之後可能沒有任何空格或製表符。認識到關閉標識符之前的第一個字符必須是由本地操作系統定義的換行符也很重要。
http://php.net/manual/en/language.types.string.php –