编写漂亮的代码 - 将后台程序与前端程序分开


Posted in PHP onApril 23, 2008

在编写PHP程序时,有些代码是用来处理一些事务,例如操作数据库、进行数学运算等,而另外的一些代码则只是事务处理的结果显示出来,例如一些使用echo语句将结果以HTML的格式显示在Web浏览器上的PHP代码以及那些直接嵌入PHP程序的HTML代码。首先我们应该清晰地区分这两种代码,把前者称为后台程序,把后者称为前端程序。

    因为PHP是一种嵌入式编程语言,也就是说,所有的PHP代码都可以嵌入到HTML代码之中,这为程序的编写带来了许多便利之处。但是,“物极必反”,如果在一段较长的程序中将PHP代码和HTML代码混合编写,这将使程序杂乱无章,不利于程序的维护和阅读。所以我们需要尽可能地将这些程序中混杂于HTML代码中的PHP代码移植出来,在专门的文件中将这些代码封装成函数,然后在HTML代码中使用include语句来包含这些文件,在适当的位置调用这些函数即可。

    这种做法一方面使HTML代码和PHP代码都简单易读,另一方面因为HTML代码需要不断更新,而这种分离的方法可以确保后台程序不会被破坏。
同前端程序不同,后台程序更多追求的是稳定、结构化,极少更改,所以应该认真地设计和管理。其实,在设计台程序时,投入大量时间是值得的,“现在栽树,以后乘凉”,在以后的设计工作中将可以轻松地使用现在编写的后台程序。

PHP 相关文章推荐
php4的session功能评述(三)
Oct 09 PHP
php 前一天或后一天的日期
Jun 28 PHP
php GD绘制24小时柱状图
Jun 28 PHP
php下通过IP获取地理位置的代码(小偷程序)
Jun 09 PHP
如何修改和添加Apache的默认站点目录
Jul 05 PHP
ThinkPHP自动转义存储富文本编辑器内容导致读取出错的解决方法
Aug 08 PHP
apache php mysql开发环境安装教程
Jul 28 PHP
关于Laravel Route重定向的一个注意点
Jan 16 PHP
解决php-fpm.service not found问题的办法
Jun 06 PHP
php处理静态页面:页面设置缓存时间实例
Jun 22 PHP
Laravel 模型关联基础教程详解
Sep 17 PHP
PHP实现创建以太坊钱包转账等功能
Apr 21 PHP
php REMOTE_ADDR之获取访客IP的代码
Apr 22 #PHP
Gregarius中文日期格式问题解决办法
Apr 22 #PHP
PHP下用rmdir实现删除目录的三种方法小结
Apr 20 #PHP
Mysql中limit的用法方法详解与注意事项
Apr 19 #PHP
php采集速度探究总结(原创)
Apr 18 #PHP
Snoopy类使用小例子
Apr 15 #PHP
mysql 中InnoDB和MyISAM的区别分析小结
Apr 15 #PHP
You might like
如何使用脚本模仿登陆过程
2006/11/22 PHP
php学习 字符串课件
2008/06/15 PHP
php从数组中随机抽取一些元素的代码
2012/11/05 PHP
php文件上传的简单实例
2013/10/19 PHP
php的ajax简单实例
2014/02/27 PHP
Nginx下配置codeigniter框架方法
2015/04/07 PHP
PHP连接MYSQL数据库实例代码
2016/01/20 PHP
PHP递归实现快速排序的方法示例
2017/12/18 PHP
用Javascript 获取页面元素的位置的代码
2009/09/25 Javascript
基于jquery实现的表格分页实现代码
2011/06/21 Javascript
javascript常见操作汇总
2014/09/03 Javascript
手机号码,密码正则验证
2014/09/04 Javascript
JavaScript数组Array对象增加和删除元素方法总结
2015/01/20 Javascript
vue.js中指令Directives详解
2017/03/20 Javascript
react学习笔记之state以及setState的使用
2017/12/07 Javascript
Python实现的下载8000首儿歌的代码分享
2014/11/21 Python
Django 响应数据response的返回源码详解
2019/08/06 Python
python中的global关键字的使用方法
2019/08/20 Python
Python迭代器iterator生成器generator使用解析
2019/10/24 Python
Python将列表中的元素转化为数字并排序的示例
2019/12/25 Python
Python基于pygame实现单机版五子棋对战
2019/12/26 Python
Pytorch 中retain_graph的用法详解
2020/01/07 Python
python求最大公约数和最小公倍数的简单方法
2020/02/13 Python
new_zeros() pytorch版本的转换方式
2020/02/18 Python
Python库skimage绘制二值图像代码实例
2020/04/10 Python
Python如何读取、写入CSV数据
2020/07/28 Python
选购世界上最好的美妆品:Cult Beauty
2017/11/03 全球购物
美国电子元器件分销商:Newark element14
2018/01/13 全球购物
TIME时代杂志台湾总代理:台时亚洲
2018/10/22 全球购物
Footshop法国:购买运动鞋
2020/01/19 全球购物
阿德的梦教学反思
2014/02/06 职场文书
女生节标语
2014/06/26 职场文书
文明倡议书
2015/01/19 职场文书
最新的离婚协议书范本!
2019/07/02 职场文书
python 制作一个gui界面的翻译工具
2021/05/14 Python
nginx+lua单机上万并发的实现
2021/05/31 Servers