本文深入探讨下php中结束标签的用法,及相关细节问题,有需要的朋友参考下。
我们知道,PHP在解析文件时,会寻找开始?php和结束标记?。 这些标记告诉PHP开始和停止解释其中的代码。 此种方式的解析可以使PHP嵌入到各种不同的文档中,凡是在一对开始和结束标记之外的内容都会被PHP解析器忽略。 大多数情况下PHP都是嵌入在HTML文档中的。 单行注释仅仅注释到行末或者当前的 PHP 代码块,视乎哪个首先出现。 这意味着在 // ... ?> 或者 # ... ?>之后的 HTML 代码将被显示出来:?> 跳出了 PHP 模式并返回了 HTML 模式,// 或 #并不能影响到这一点。 即使?>出现在//注释中,PHP解析器也会认为PHP解析结束(当 PHP 碰到结束标记 ?> 时,将其后的内容原样输出( 除非其后紧接着一个新行,参见指令分隔符)直到碰到下一个开始标记为止)。 例子: <?php //$a = 'testtest'; //preg_match_all('|]+href="([^\"]*)".*?>|', $a, $b); //print_r($b); 登录后复制 输出结果: :!php preg.php |', $a, $b); //print_r($b);可以使用/* */进行注释,或者将?>用字符串连接符进行连接,以修正上述的问题,例如: <?php $a = 'testtest'; preg_match_all('|]+href="([^\"]*)".*?'.'>|', $a, $b); print_r($b); 登录后复制 说明: 此细节也适用于JS结束标签。 |