从HTML中分离
凡是在一对开始和结束标记之外的内容都会被PHP解析器忽略,这使得PHP文件可以具备混合内容。可是使PHP嵌入到HTML文档中去,如下所示。
<p>这里是 HTML</p>
<?php echo "这里是PHP代码";?>
<p>这里也是HTML</p>
上面将如预期中的运行,因为当PHP解释器碰到 ?>
,结束标记时就简单地将其后面内容原样输出(除非如下面所示 根据条件输出内容)
<?php if($ex === true): ?>
<p>如果`$ex`是 true 输出这句话。</p>
<?php else: ?>
<p>否则输出这句话。</p>
<?php endif; ?
上例中 PHP 将跳过条件语句判定为false
的段落,即使段落位于PHP段落之外,也是如此。由于PHP解释器会在条件未达成时直接跳过该段条件语句块,因此PHP会根据条件来忽略段落。
输出大段文本时,跳出PHP解析模式通常比将文本通过 echo 或者 print 输出更有效率。
此外注意如果将PHP嵌入到XML后者XHTML中需要使用 <?PHP ?> 标记以符合标准。
当用户不能控制服务器的开发环境中,尽量不要使用短标记,因为不能保证服务器支持短标记。
在PHP 5.2 和之前的版本中,解释器不允许一个文件的全部内容就是一个开始标记 <?php ,自 PHP5.3 起允许此种文件,但要开始标记后有一个或者更多的空白字符。
自PHP 5.4 起,短格式的 echo 标记 <?= 被认为合法,不用设置 short_open_tag 的设置是什么。
评论已关闭