echo <<<JS <script type="text/javascript"> alert( '刪除成功' ); window.location.href = "index.php?app=homepage&act=module_list"; </script> JS;
格式如上
1、標記不能和內容出現在同一行上
2、結束標記必須緊靠行開頭
3、標記左右兩邊不能出現空格
因為用的不多,用時又要忘, 所以記錄下來以便查閱
Heredoc技術,在正規的PHP文檔中和技術書籍中一般沒有詳細講述,只是提到了這是一種Perl風格的字符串輸出技術。但是現在的一些論壇程序,和 部分文章系統,都巧妙的使用heredoc技術,來部分的實現了界面與代碼的准分離,phpwind模板就是一個典型的例子。 如下:
<?php header("content-type:text/html;charset=utf-8"); $name = '淺水游'; print <<<EOT <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <title>Untitled Document</title> </head> <body> 12321; Hello,$name! </body> </html> EOT; ?>
1.以<<<End開始標記開始,以End結束標記結束,結束標記必須頂頭寫,不能有縮進和空格,且在結束標記末尾要有分號 。開始標記和開始標記相同,比如常用大寫的EOT、EOD、EOF來表示,但是不只限於那幾個,只要保證開始標記和結束標記不在正文中出現即可。
2.位於開始標記和結束標記之間的變量可以被正常解析,但是函數則不可以。在heredoc中,變量不需要用連接符.或,來拼接,如下:
<?php $v=2; $a= <<<EOF "abc"$v "123" EOF; echo $a; //結果連同雙引號一起輸出:"abc"2 "123"
3.heredoc常用在輸出包含大量HTML語法d文檔的時候。比如:函數outputhtml()要輸出HTML的主頁。可以有兩種寫法。很明顯第二種寫法比較簡單和易於閱讀。
<?php function outputhtml(){ echo "<html>"; echo "<head><title>主頁</title></head>"; echo "<body>主頁內容</body>"; echo "</html>; } function outputhtml() { echo <<<EOT <html> <head><title>主頁</title></head> <body>主頁內容</body> </html> EOT; } outputhtml();
URL:http://www.bianceng.cn/webkf/PHP/201410/45957.htm