PHP解释执行的不假,但是它的优先级是高于html和js的,也就是说,PHP是首先被解释执行.
你这段代码等同于<?php
if($a>1)
{
echo "if外的文字";
}
else
{
echo "else外的文字";
?>也就是说,虽然你把它当做html,但是这段html是处于if else的包括范围之内的,所以要受影响.这个我觉得如果你以前PHP和html混用过的话,就不会有此问题了.
你这段代码等同于<?php
if($a>1)
{
echo "if外的文字";
}
else
{
echo "else外的文字";
?>也就是说,虽然你把它当做html,但是这段html是处于if else的包括范围之内的,所以要受影响.这个我觉得如果你以前PHP和html混用过的话,就不会有此问题了.
if($a>1){
?>
if外的文字
<?php
} else{
?>
else外的文字
<?php }?>
上例可正常工作,因为当 PHP 碰到结束标记 ?> 时,就简单地将其后的内容原样输出直到碰到下一个开始标记为止。
PHP指抽出 <?php?>内的代码加以解释执行,为什么这个If会影响其外的HTML输出?
打开PHP手册,查找-章 10. 基本语法
里面有你要的答案~
而且上面也有个和这代码一模一样的例子;
但对“最近的一个结尾的新行“不明白,太该是?>后所有的html吧,然后在其后加上一个分号;