為了讓大家徹底理解php中的EOF,這次我們開始一個新的章節,有需要的小夥伴可以來看看。
在php中,存在著定義字串的方法,這就是heredoc;它可以在命令列shell(如sh、csh、ksh、bash、PowerShell和zsh)和程式語言(像Perl 、PHP、Python和Ruby)之中去定義。
首先我們來看一個小小的栗子。
<?php $name="runoob"; $a= <<<EOF "abc"$name "123" EOF; // 结束需要独立一行且前后不能空格 echo $a; ?>
我們看這段程式碼,好像“$a=
”後面的程式碼十分奇特啊,居然使用了“<<<
”,而且它還有兩個一樣的EOF單字,這是什麼呢?這又有什麼意思呢?
在PHP中,如果我們想要在命令列shell里或是在程式語言定義字串,我們有一個特定的格式,就是.以<<<EOF
開始標記開始,以EOF
結束標記結束。
我們了解了heredoc,那我們去看看使用heredoc的方法吧。
1. 必須在EOF結束標記後接分號,否則編譯通不過。
2. 只要保證結束標識與開始標識一致,開始標記和結束標記可以用任意其它字元代替。
3. 結束標記必須佔據頂部網格中的一行(它必須從行首開始,後面不能有任何空格和字元)。
4.開始識別碼可以沒有引號,也可以有單引號和雙引號。不帶引號的效果與雙引號的效果相同。解釋嵌入變數和轉義符號。對於單引號,嵌入變數和轉義符號不會被解釋。
5.當內容需要嵌入引號(單引號或雙引號)時,不需要加上轉義符號。內容本身避開了單引號和雙引號,這等於Q和QQ的用法。
知道了那麼多使用heredoc的方法之後,我們去看看注意事項吧,避免我們寫出來的程式碼無法使用啊,或是出現其他的問題。
1.以<<<EOF開始標籤開始,以EOF結束標籤結束。結束標記必須寫在開頭,沒有縮排和空格,並且結束標記的結尾必須有分號。
2.開始標記與結束標記相同,例如大寫的EOT、EOD和EOF,但不限於那些(JSON、HTML等),只要開始標記和結束標記不出現在正文中。
3.開始標籤和結束標籤之間的變數可以正常解析,但函數不能。在heredoc中,變數不需要用連接符號.
或,
來將它們連接到一起,就想我們上面範例裡的「"abc"$name
”一樣。
就說到這裡了,有其他想知道的,可以點選這個喔。 → →php影片教學
#以上是heredoc是什麼?它能為PHP做什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!