關(guān)于PHP結(jié)束標(biāo)簽的使用細(xì)節(jié)探討及聯(lián)想
更新時(shí)間:2013年03月04日 16:26:01 作者:
PHP解析文件時(shí)會(huì)尋找開(kāi)始?php和結(jié)束標(biāo)記?,標(biāo)記告訴PHP開(kāi)始和停止解釋其中的代碼,接下來(lái)將詳細(xì)介紹下PHP結(jié)束標(biāo)簽的使用細(xì)節(jié)感興趣的你可以參考下本文或許可以幫助到你
當(dāng)PHP解析一個(gè)文件時(shí),會(huì)尋找開(kāi)始<?php和結(jié)束標(biāo)記?>,標(biāo)記告訴PHP開(kāi)始和停止解釋其中的代碼。此種方式的解析可以使PHP嵌入到各種不同的文檔中,凡是在一對(duì)開(kāi)始和結(jié)束標(biāo)記之外的內(nèi)容都會(huì)被PHP解析器忽略。大多數(shù)情況下PHP都是嵌入在HTML文檔中的。
單行注釋僅僅注釋到行末或者當(dāng)前的 PHP 代碼塊,視乎哪個(gè)首先出現(xiàn)。這意味著在 // ... ?> 或者 # ... ?>之后的 HTML 代碼將被顯示出來(lái):?> 跳出了 PHP 模式并返回了 HTML 模式,// 或 #并不能影響到這一點(diǎn)。
由以上討論可可知,即使?>出現(xiàn)在//注釋中,PHP解析器也會(huì)認(rèn)為PHP解析結(jié)束(當(dāng) PHP 碰到結(jié)束標(biāo)記 ?> 時(shí),就簡(jiǎn)單地將其后的內(nèi)容原樣輸出( 除非其后緊接著一個(gè)新行,參見(jiàn)指令分隔符)直到碰到下一個(gè)開(kāi)始標(biāo)記為止)。
<?php
//$a = '<a href="test.html" title="#">test</a><a href="test.html" title="#">test</a>';
//preg_match_all('|<a[^>]+href="([^\"]*)".*?>|', $a, $b);
//print_r($b);
輸出為:
:!php preg.php
|', $a, $b);
//print_r($b);
如何修正上述問(wèn)題呢?或者你使用/* */進(jìn)行注釋?zhuān)蛘邔?>用字符串連接符進(jìn)行連接,如下:
<?php
$a = '<a href="test.html" title="#">test</a><a href="test.html" title="#">test</a>';
preg_match_all('|<a[^>]+href="([^\"]*)".*?'.'>|', $a, $b);
print_r($b);
這一細(xì)節(jié)同樣適用于JS結(jié)束標(biāo)簽</script>
單行注釋僅僅注釋到行末或者當(dāng)前的 PHP 代碼塊,視乎哪個(gè)首先出現(xiàn)。這意味著在 // ... ?> 或者 # ... ?>之后的 HTML 代碼將被顯示出來(lái):?> 跳出了 PHP 模式并返回了 HTML 模式,// 或 #并不能影響到這一點(diǎn)。
由以上討論可可知,即使?>出現(xiàn)在//注釋中,PHP解析器也會(huì)認(rèn)為PHP解析結(jié)束(當(dāng) PHP 碰到結(jié)束標(biāo)記 ?> 時(shí),就簡(jiǎn)單地將其后的內(nèi)容原樣輸出( 除非其后緊接著一個(gè)新行,參見(jiàn)指令分隔符)直到碰到下一個(gè)開(kāi)始標(biāo)記為止)。
復(fù)制代碼 代碼如下:
<?php
//$a = '<a href="test.html" title="#">test</a><a href="test.html" title="#">test</a>';
//preg_match_all('|<a[^>]+href="([^\"]*)".*?>|', $a, $b);
//print_r($b);
輸出為:
復(fù)制代碼 代碼如下:
:!php preg.php
|', $a, $b);
//print_r($b);
如何修正上述問(wèn)題呢?或者你使用/* */進(jìn)行注釋?zhuān)蛘邔?>用字符串連接符進(jìn)行連接,如下:
復(fù)制代碼 代碼如下:
<?php
$a = '<a href="test.html" title="#">test</a><a href="test.html" title="#">test</a>';
preg_match_all('|<a[^>]+href="([^\"]*)".*?'.'>|', $a, $b);
print_r($b);
這一細(xì)節(jié)同樣適用于JS結(jié)束標(biāo)簽</script>
您可能感興趣的文章:
相關(guān)文章
PHP使用file_get_content設(shè)置頭信息的方法
這篇文章主要介紹了PHP使用file_get_content設(shè)置頭信息的方法,結(jié)合實(shí)例形式對(duì)比分析了PHP使用fopen及file_get_contents設(shè)置及獲取頭信息的相關(guān)技巧,需要的朋友可以參考下2016-02-02PHP魔術(shù)引號(hào)所帶來(lái)的安全問(wèn)題分析
這篇文章主要介紹了PHP魔術(shù)引號(hào)所帶來(lái)的安全問(wèn)題分析,對(duì)于安全編碼來(lái)說(shuō)非常重要!需要的朋友可以參考下2014-07-07解析PHP將對(duì)象轉(zhuǎn)換成數(shù)組的方法(兼容多維數(shù)組類(lèi)型)
本篇文章是對(duì)PHP將對(duì)象轉(zhuǎn)換成數(shù)組的方法(兼容多維數(shù)組類(lèi)型)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06php將圖片文件轉(zhuǎn)換成二進(jìn)制輸出的方法
這篇文章主要介紹了php將圖片文件轉(zhuǎn)換成二進(jìn)制輸出的方法,涉及php針對(duì)圖片文件的讀取與轉(zhuǎn)換輸出技巧,需要的朋友可以參考下2015-06-06php 出現(xiàn)Strict Standards: Only variables should be passed by r
這個(gè)問(wèn)題多半是因?yàn)橐脗鬟f參數(shù)引起的,解決辦法一是修改代碼不使用引用傳遞,需要的朋友可以參考下2017-08-08PHP隨機(jī)生成中文段落示例【測(cè)試網(wǎng)站內(nèi)容時(shí)使用】
這篇文章主要介紹了PHP隨機(jī)生成中文段落,結(jié)合實(shí)例形式分析了PHP針對(duì)隨機(jī)中文段落的編碼轉(zhuǎn)換、生成相關(guān)操作技巧,需要的朋友可以參考下2020-04-04