Home > Backend Development > PHP Tutorial > 这个while循环为什么要分开写呢?为什么不写在一个php标签里面?

这个while循环为什么要分开写呢?为什么不写在一个php标签里面?

WBOY
Release: 2016-06-06 20:19:59
Original
1541 people have browsed it

图片里这个 为什么while循环的开始的花括号那里就写了结束标记呢 后面的那个结束花括号又单独被php标签包含 while执行语句里面是独立的php标签 为什么要这样写呢? 把这些所有的都包含在一个 这样的标签里面不行吗 我经常看到这样的写法的 一点都不懂为什么要这样写 大家能给解释一下吗
这个while循环为什么要分开写呢?为什么不写在一个php标签里面?

回复内容:

图片里这个 为什么while循环的开始的花括号那里就写了结束标记呢 后面的那个结束花括号又单独被php标签包含 while执行语句里面是独立的php标签 为什么要这样写呢? 把这些所有的都包含在一个 这样的标签里面不行吗 我经常看到这样的写法的 一点都不懂为什么要这样写 大家能给解释一下吗
这个while循环为什么要分开写呢?为什么不写在一个php标签里面?

一个是PHP代码,一个是HTML代码。如果把HTML代码写到PHP代码块里面需要用echo把HTML代码包裹起来。但这样写PHP解释器就会自动处理中间的HTML代码,省事很多,看着也清晰。

php与html混写的一种方式
要么以php文件的开始与结束符分隔
这种方式就是你所遇到的,碰到html的内容,无论是while还是for等等,只要碰到了,就得结束
要么把html作为php中的一个字符串

<code><?php while (condition) {
    echo "<div>***"
  }
?></code>
Copy after login

php标签外面的文字会被当成文本处理,因此那个}就是php的一部分,跟第39行的while配对。
其实可以有一个更优雅的写法:替代语法

<code><?php while (xxx): ?>
    <div>some html code</div>
    <!-- 只有单一变量也可以按照下一行这么写 -->
    <div>value $_GET['a'] is =$_GET['a']?></div>
<?php endwhile; ?>
</code>
Copy after login

对于iffor等语句,也有类似的替代语法。

模板的引入就是为了不要在代码里拼接html,那样是歪门邪道。

因为这是php里输出html啊

Related labels:
php
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template