php不写闭合标签的好处


Posted in PHP onMarch 04, 2014

最早这个概念是从Drupal中接触到的,一开始有点不习惯——为什么不写闭合标签呢?这感觉很不完美啊,对于有强迫症的人来说很不适应嘛!后来,在工作中碰到了因为标签闭合而引起的问题,才开始不写闭合标签。
参阅了一些文章,对PHP闭合标签的总结如下:
好处:如果这个是一个被别人包含的程序,没有这个结束符,可以减少很多很多问题,比如说:header, setcookie, session_start这些动作之前不能有输出,如果不小心在?> 后边加了不可见字符(多余的空格、换行符)等破坏页面显示,就会报"Header already sent"错误,不写的话不会有此问题。另,可以直接把光标移到最后,接着编程。
坏处:在dreamweaver的视图模式下,一团糟。
关于PHP闭合标签官方解释是:PHP闭合标签"?>"在PHP中对PHP的分析器是可选的。但是,如果使用闭合标签,任何由开发者,用户, 或者FTP应用程序插入闭合标签后面的空格都有可能会引起多余的输出、php错误、之后的输出无法显示、空白页。因此,所有的php文件应该省略这个php闭合标签,并插入一段注释来标明这是文件的底部并定位这个文件在这个应用的相对路径。这样有利于你确定这个文件已经结束而不是被删节的。
在Zend的代码规范中,也提到了这一点:http://framework.zend.com/manual/1.12/en/coding-standard.php-file-formatting.html
代码示例:
不当的:

<?php
echo "Here's my code!";
?>

适当的:
<?php
echo "Here's my code!";
/* End of file myfile.php */
/* Location: ./system/modules/mymodule/myfile.php */

因此,如果是纯php code文件的话,应该省略?>结束标识符。

PHP 相关文章推荐
PHP中ADODB类详解
Mar 25 PHP
php 移除数组重复元素的一点说明
Nov 27 PHP
PHP Zip解压 文件在线解压缩的函数代码
May 26 PHP
php数组的概述及分类与声明代码演示
Feb 26 PHP
PHP导出EXCEL快速开发指南--PHPEXCEL的使用详解
Jun 03 PHP
简单谈谈PHP中的include、include_once、require以及require_once语句
Apr 23 PHP
php上传图片类及用法示例
May 11 PHP
php运行报错Call to undefined function curl_init()的最新解决方法
Nov 20 PHP
PHP调用Mailgun发送邮件的方法
May 04 PHP
Laravel5.* 打印出执行的sql语句的方法
Jul 24 PHP
Yii框架Session与Cookie使用方法示例
Oct 14 PHP
Laravel5.5 手动分页和自定义分页样式的简单实现
Oct 15 PHP
php循环创建目录示例分享(php创建多级目录)
Mar 04 #PHP
PHP中is_file不能替代file_exists的理由
Mar 04 #PHP
php获取目标函数执行时间示例
Mar 04 #PHP
PHP代码优化的53个细节
Mar 03 #PHP
php 表单提交大量数据发生丢失的解决方法
Mar 03 #PHP
PHP根据IP判断地区名信息的示例代码
Mar 03 #PHP
使用php清除bom示例
Mar 03 #PHP
You might like
Yii结合CKEditor实现图片上传功能
2014/06/13 PHP
jquery 插件开发备注
2010/08/27 Javascript
基于jQuery的获得各种控件Value的方法
2010/11/19 Javascript
JavaScript文本框脚本编写的注意事项
2016/01/25 Javascript
改变checkbox默认选中状态及取值的实现代码
2016/05/26 Javascript
Vue.js快速入门教程
2016/09/07 Javascript
JavaScript实现星级评分
2017/01/12 Javascript
javascript 中关于array的常用方法详解
2017/05/05 Javascript
vue轮播图插件vue-awesome-swiper的使用代码实例
2017/07/10 Javascript
JS实现常见的查找、排序、去重算法示例
2018/05/21 Javascript
vue.js循环radio的实例
2019/11/07 Javascript
Ant-design-vue Table组件customRow属性的使用说明
2020/10/28 Javascript
由浅入深讲解python中的yield与generator
2017/04/05 Python
python+selenium实现163邮箱自动登陆的方法
2017/12/31 Python
python生成1行四列全2矩阵的方法
2018/08/04 Python
Python设计模式之状态模式原理与用法详解
2019/01/15 Python
python实现多层感知器MLP(基于双月数据集)
2019/01/18 Python
python初学者,用python实现基本的学生管理系统(python3)代码实例
2019/04/10 Python
Python计算一个点到所有点的欧式距离实现方法
2019/07/04 Python
使用python绘制温度变化雷达图
2019/10/18 Python
pygame实现俄罗斯方块游戏(AI篇2)
2019/10/29 Python
基于python的列表list和集合set操作
2019/11/24 Python
将python文件打包exe独立运行程序方法详解
2020/02/12 Python
PyQt5实现登录页面
2020/05/30 Python
Trina Turk官网:美国时装和泳装品牌
2018/06/10 全球购物
橄榄树药房:OLIVEDA
2019/09/01 全球购物
南京某软件公司的.net面试题
2015/11/30 面试题
数控专业毕业生求职信
2014/06/12 职场文书
物理课外活动总结
2014/08/27 职场文书
共青团员自我评价范文
2014/09/14 职场文书
钳工实训报告总结
2014/11/04 职场文书
2015年酒店客房部工作总结
2015/04/25 职场文书
告诉你创业计划书的8个实用技巧
2019/07/12 职场文书
世界文化遗产导游词
2019/08/07 职场文书
浅谈克隆 JavaScript
2021/11/02 Javascript
MySQL普通表如何转换成分区表
2022/05/30 MySQL