欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP 定界符 使用技巧

 更新時間:2009年06月14日 14:22:28   作者:  
因為PHP是一個Web編程語言,在編程過程中難免會遇到用echo來輸出大段的html和javascript腳本的情況
如果用傳統(tǒng)的輸出方法——按字符串輸出的話,肯定要有大量的轉(zhuǎn)義符來對字符串中的引號等特殊字符進(jìn)行轉(zhuǎn)義,以免出現(xiàn)語法錯誤。如果是一兩處還可以容忍,但是要是一個完整的html文本或者是一個200行的js我想是誰都會崩潰的。這就是PHP為什么要引入一個定界符的原因——至少一大部分原因是這樣的。
1.PHP定界符的作用就是按照原樣,包括換行格式什么的,輸出在其內(nèi)部的東西;
2.在PHP定界符中的任何特殊字符都不需要轉(zhuǎn)義;
3.PHP定界符中的PHP變量會被正常的用其值來替換。
PHP中的定界符格式是這樣的:
復(fù)制代碼 代碼如下:

<<<Eof
……
Eof;

看起來很簡單,但是其中有許多地方需要注意。
首先在<<<之后的字符Eof是自己定義的,隨便什么都是可以的(比如AAA都可以),但是結(jié)尾處的字符一定要和他一樣,他們是成對出現(xiàn)的,就像{}這樣的——這是最基本的。
在PHP定界符使用的過程中,第二個需要注意的問題——也是最經(jīng)常出現(xiàn)問題的地方:
結(jié)尾的一行(如上例的Eof;),一定要另起一行,并且改行除了Eof;這個定界符結(jié)尾標(biāo)識之外不能有任何其他字符,前后都不能有,包括空格。如果在本行最前或者最后出現(xiàn)空格,制表符的話,你會收到一個這樣的錯誤信息:
Parse error: parse error, unexpected $end in……,提示你語法錯誤;
第三個需要注意的是,如果在定界符中間出現(xiàn)有PHP的變量,你只需要像在其它字符串中輸出一樣寫就行了,例如
復(fù)制代碼 代碼如下:

<<<Eof
hello{$name}
Eof;

變量$name之所以要用{}括起來是要告訴PHP解析器這是一個PHP變量,其實不用也是可以的,但是有可能會產(chǎn)生歧義,例如你的變量后面剛好不是一字母或者特殊符號什么的會怎么樣呢?千萬不能有這樣的寫法
復(fù)制代碼 代碼如下:

<<<Eof
hello<?php echo $name?>
Eof;

這樣的情況,你同樣會收到一個語法錯誤的信息。先便是一個戰(zhàn)地測試過的PHP定界符的正確寫法。里面包含了,html和javascript的代碼:
復(fù)制代碼 代碼如下:

<?php
$name = 'kitty';
echo <<<Eof
<table height="20">
<tr><td>
{$name}<br/>
<script>
var p='hello world';
document.writeln(p);
</script>
</td></tr>
</table>
Eof;
?>

相關(guān)文章

最新評論