没事自己写了一个PHP面向对象开发框架,感觉已经能够符合基本的开发需要,同时也参考了众多的开发框架,这里只是个人的感受,发表一下自己的观点和大家交流一下:
第一、ORM是否必要
个人认为,作为一个PHP的开发框架,目的是为了方便开发没有错,毫无疑问,ORM确实方便了开发过程中带来的便利性,也使一个开发者不需要考虑数据层的结构;但从另外一个方面讲,ORM对效率的影响也是不容忽视的,ORM将一个基本的数据结构转换为对象,这无疑是增加了系统开销,而另一方面是除非你的ORM能够做到对SQL的优化达到最好,不然做为一个开发人员对数据层的了解更是一无所知。这样会更让一个PHP engineer转变为一个PHP coder。
第二、模板引擎是否必要
PHP是一个解释型语言,PHP本身就已经是一个大的模板引擎,在此之上再封一层模板引擎是否真有必要,曾经听到一个做美工的朋友问我:
他问我:“为什么要用smarty呢?”,
我说:“smarty方面模板和逻辑的分离”,
那他就问:“难道PHP语言本身就不能实现模板和逻辑分离?”。
我一时无语........
思考了一会我回答他:“使用模板引擎更安全”。
他又有一个疑问:“我学了smarty的语法,PHP的语法基本上都会了,学模板的人员又是自己的员工和同事,这个应该不是大问题吧”。
我又一次无言以对。
是啊,为什么PHP本身就是一个模板引擎,却还要封一层呢,在这里我声明一下,我不是说smarty等引擎不好,只是本人一直有这样的疑问。
分享到:
相关推荐
- 常见PHP框架:介绍Laravel、Symfony、CodeIgniter等流行的PHP框架,理解其设计理念和使用方式。 9. 安全性: - 输入验证:了解如何防止SQL注入、XSS攻击等,学习使用filter_var等函数进行数据过滤。 - 密码...
EaglePHP,是一款开源、高效、面向对象的PHP MVC开发框架,完全基于PHP5可用于开发WEB程序和服务,借鉴国外优秀框架的设计思路,分层的设计思想使独立开发成为可能,建立模型推动代码的重用,有助于促进快速软件开发...
ORM是DevShell中的一个重要特性,它将数据库表映射为PHP类,数据库记录映射为类的对象,使得开发者可以使用面向对象的方式来操作数据库,提高了代码的可读性和可维护性。 6. **模板引擎**: DevShell可能内置了一...
10. 扩展和框架:最后,对于初学者,了解如何利用PHP的扩展(如GD库进行图像处理)和使用PHP框架(如Laravel、CodeIgniter)可以提高开发效率。 虽然我们无法提供文档的具体内容,但根据标题和标签,我们可以推测...
EaglePHP,是一款开源、高效、面向对象的PHP MVC开发框架,完全基于PHP5可用于开发WEB程序和服务,借鉴国外优秀框架的设计思路,分层的设计思想使独立开发成为可能,建立模型推动代码的重用,有助于促进快速软件开发...
此外,文档还提到了PHP的一些高级特性,比如面向对象编程、各种框架(Yii框架、Tp框架等)、MVC框架详解等,并强调了学习PHP的多种途径,包括通过观看视频教程以及参与实际项目案例的开发来加深理解。这种结合理论与...
EaglePHP,是一款开源、高效、面向对象的PHP MVC开发框架,完全基于PHP5可用于开发WEB程序和服务,借鉴国外优秀框架的设计思路,分层的设计思想使独立开发成为可能,建立模型推动代码的重用,有助于促进快速软件开发...
总的来说,CanPHP是一个适合中小型企业或个人开发者使用的PHP框架,它的轻量级特性、易用性和强大的功能使其成为快速构建Web应用的理想选择。通过熟练掌握CanPHP,开发者能够更加高效地进行项目开发,同时享受到简洁...
5. **面向对象编程**:讲解类、对象、属性、方法、继承、多态、接口、抽象类和final关键字等OOP概念。 6. **PHP扩展与函数库**:涵盖大量的内置函数,如日期与时间处理、数学运算、正则表达式、文件系统操作、网络...
1. **MySQLi**:MySQL Improved Extension,适用于较旧的MySQL数据库,提供面向对象和面向过程两种接口。 2. **PDO (PHP Data Objects)**:为多种数据库提供统一的接口,支持预处理语句,提高安全性。 3. **SQL...
- MySQLi(Improved MySQL):专为MySQL设计的扩展,提供了面向对象和面向过程两种编程方式。 - SQL查询:插入、更新、删除和选择数据,使用预处理语句防止SQL注入。 3. **Web框架** - 万岳开源网校系统可能使用...
5. **实训06.txt**: 可能会涉及面向对象编程(OOP)的概念,如类、对象、继承、封装、多态等。这是PHP5及更高版本的核心特性,对编写可维护的代码至关重要。 6. **实训07.txt**: 该实训可能关注PHP的Web开发应用,...
面试中,PHP的基础语法、数组操作、字符串处理、错误处理、文件系统操作、MySQL数据库交互、PHP与HTML的交互(如表单处理)、PHP的预定义变量和魔术常量、OOP(面向对象编程)概念以及PHP框架(如Laravel、Symfony)...
ThinkPHP是一个快速、简单的面向对象的轻量级PHP开发框架,旨在帮助开发者快速构建Web应用。 从手册的内容来看,知识点涵盖了以下几个方面: 1. 入门部分:介绍了ThinkPHP的基本概念、如何获取并安装ThinkPHP、...
10. **PHP框架**:诸如Laravel、Symfony、Yii等PHP框架简化了Web开发过程,提供了预设的结构和最佳实践。 11. **PHP与前端技术结合**:PHP可以与HTML、CSS、JavaScript紧密协作,通过AJAX实现异步通信,提高用户...
- **实战项目**:尝试自己动手实现一个小项目,比如博客系统,以加深理解和实际操作能力。 #### 五、作者建议 - **代码集成**:本教程包含了完成博客所需的所有代码,无需额外查找资料。 - **在线支持**:对于教程...
Zend Optimizer则是PHP的一个重要组件,它对编译后的PHP代码进行优化,减少内存消耗,提高代码执行速度。版本3.2.8是针对PHP5的一个兼容版本,确保了系统在运行时的性能表现。 企业网站系统包含了前端和后端的完整...
- 《php面向对象程序设计入门教程》:深入理解面向对象编程在PHP中的应用,对于使用Yii框架非常有帮助。 - 《php字符串(string)用法总结》:字符串处理是PHP开发中的常见任务,了解其各种函数和用法能提升编码效率。...