PHP三種字符串界定符的區別


  單引號,雙引號,<<<的區別如下:

  前續:今天突然遇到了<<<EOT,可在運行的時候出錯了,所以就度娘了下。

1、單引號:’a string’
   \’是唯一的轉義碼,不能內嵌變量(包含的變量,是不作解析的,只是照原樣輸出)。

2、雙引號: ”a $better string\n”
  標准的轉義碼能正常使用,可內嵌變量(包含的變量,PHP會解析)。

3、“Here-doc” 語法: PHP界定符

1 $a=1;  
2 echo <<<EOT  
3 <script language="JavaScript" type="text/JavaScript">  
4 var a = $a;  
5 alert(a);  
6 </script>  
7 EOT;

  <<<EOTEOT界定符,他們之間的內容php將會識別為一段大的字符串,相當於""雙引號。對於多行的大文本或html非常有用,並且支持內嵌變量。

  其作用可歸納為3點:

  1.PHP定界符的作用就是按照原樣,包括換行格式什么的,輸出在其內部的所有東西;

  2.在PHP定界符中的任何特殊字符都不需要轉義,照常書寫;

  3.PHP定界符中的PHP變量會被正常的用其值來替換(php解析嵌套變量)。

  注意事項:

  1.在<<<之后的字符EOT是自己定義的,隨便什么都是可以的,但是結尾處的字符一定要和他一樣,他們是成對出現的。

  2.以<<<EOT開頭,后面另起新行。 結尾EOT; 單獨占用一行,前后不能有包含空格在內的任何字符。

  3.內嵌的php變量,必要時要用{}括起來是要告訴PHP解析器這是一個PHP變量,例如{$name}來避免產生歧義,其它情況可以不用{}。
  注意:  

 

綜合上述可以看出,單引號執行效率是比后兩種要高。所以在使用過程過應該酌情而定。

 

參考文章:

http://www.oschina.net/question/234345_42240

http://www.chinaz.com/program/2009/0216/67050.shtml

http://blog.csdn.net/zollty/article/details/6614655

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM