`
jack4518
  • 浏览: 5213 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

自己写的一个面向对象的PHP框架后的疑问

    博客分类:
  • PHP
阅读更多
没事自己写了一个PHP面向对象开发框架,感觉已经能够符合基本的开发需要,同时也参考了众多的开发框架,这里只是个人的感受,发表一下自己的观点和大家交流一下:

第一、ORM是否必要
  个人认为,作为一个PHP的开发框架,目的是为了方便开发没有错,毫无疑问,ORM确实方便了开发过程中带来的便利性,也使一个开发者不需要考虑数据层的结构;但从另外一个方面讲,ORM对效率的影响也是不容忽视的,ORM将一个基本的数据结构转换为对象,这无疑是增加了系统开销,而另一方面是除非你的ORM能够做到对SQL的优化达到最好,不然做为一个开发人员对数据层的了解更是一无所知。这样会更让一个PHP engineer转变为一个PHP coder。

第二、模板引擎是否必要
  PHP是一个解释型语言,PHP本身就已经是一个大的模板引擎,在此之上再封一层模板引擎是否真有必要,曾经听到一个做美工的朋友问我:
他问我:“为什么要用smarty呢?”,
我说:“smarty方面模板和逻辑的分离”,
那他就问:“难道PHP语言本身就不能实现模板和逻辑分离?”。
我一时无语........
思考了一会我回答他:“使用模板引擎更安全”。
他又有一个疑问:“我学了smarty的语法,PHP的语法基本上都会了,学模板的人员又是自己的员工和同事,这个应该不是大问题吧”。
我又一次无言以对。

是啊,为什么PHP本身就是一个模板引擎,却还要封一层呢,在这里我声明一下,我不是说smarty等引擎不好,只是本人一直有这样的疑问。
分享到:
评论

相关推荐

    PHP必备工具书:PHP FAQ 由浅入深,解答PHP实际应用可能出现的疑问

    - 常见PHP框架:介绍Laravel、Symfony、CodeIgniter等流行的PHP框架,理解其设计理念和使用方式。 9. 安全性: - 输入验证:了解如何防止SQL注入、XSS攻击等,学习使用filter_var等函数进行数据过滤。 - 密码...

    EaglePHP框架1.9

    EaglePHP,是一款开源、高效、面向对象的PHP MVC开发框架,完全基于PHP5可用于开发WEB程序和服务,借鉴国外优秀框架的设计思路,分层的设计思想使独立开发成为可能,建立模型推动代码的重用,有助于促进快速软件开发...

    基于PHP的DevShell 高速应用程序开发框架.zip

    ORM是DevShell中的一个重要特性,它将数据库表映射为PHP类,数据库记录映射为类的对象,使得开发者可以使用面向对象的方式来操作数据库,提高了代码的可读性和可维护性。 6. **模板引擎**: DevShell可能内置了一...

    PHP初级开发者常见的5种疑问编程小技巧共4页.pdf.z

    10. 扩展和框架:最后,对于初学者,了解如何利用PHP的扩展(如GD库进行图像处理)和使用PHP框架(如Laravel、CodeIgniter)可以提高开发效率。 虽然我们无法提供文档的具体内容,但根据标题和标签,我们可以推测...

    EaglePHP 开源框架 v 1.7 发布

    EaglePHP,是一款开源、高效、面向对象的PHP MVC开发框架,完全基于PHP5可用于开发WEB程序和服务,借鉴国外优秀框架的设计思路,分层的设计思想使独立开发成为可能,建立模型推动代码的重用,有助于促进快速软件开发...

    php基础入门详解(含视频学习地址).pdf

    此外,文档还提到了PHP的一些高级特性,比如面向对象编程、各种框架(Yii框架、Tp框架等)、MVC框架详解等,并强调了学习PHP的多种途径,包括通过观看视频教程以及参与实际项目案例的开发来加深理解。这种结合理论与...

    EaglePHP 开源框架 v 1.8 发布

    EaglePHP,是一款开源、高效、面向对象的PHP MVC开发框架,完全基于PHP5可用于开发WEB程序和服务,借鉴国外优秀框架的设计思路,分层的设计思想使独立开发成为可能,建立模型推动代码的重用,有助于促进快速软件开发...

    canphp框架

    总的来说,CanPHP是一个适合中小型企业或个人开发者使用的PHP框架,它的轻量级特性、易用性和强大的功能使其成为快速构建Web应用的理想选择。通过熟练掌握CanPHP,开发者能够更加高效地进行项目开发,同时享受到简洁...

    PHP中文手册.jar chm

    5. **面向对象编程**:讲解类、对象、属性、方法、继承、多态、接口、抽象类和final关键字等OOP概念。 6. **PHP扩展与函数库**:涵盖大量的内置函数,如日期与时间处理、数学运算、正则表达式、文件系统操作、网络...

    PHP新手上路中文教程(推荐)

    1. **MySQLi**:MySQL Improved Extension,适用于较旧的MySQL数据库,提供面向对象和面向过程两种接口。 2. **PDO (PHP Data Objects)**:为多种数据库提供统一的接口,支持预处理语句,提高安全性。 3. **SQL...

    PHP实例开发源码—万岳开源网校系统源码安卓版.zip

    - MySQLi(Improved MySQL):专为MySQL设计的扩展,提供了面向对象和面向过程两种编程方式。 - SQL查询:插入、更新、删除和选择数据,使用预处理语句防止SQL注入。 3. **Web框架** - 万岳开源网校系统可能使用...

    PHP实训1-8(指导教师需要改成任课教师的名字)(1).rar

    5. **实训06.txt**: 可能会涉及面向对象编程(OOP)的概念,如类、对象、继承、封装、多态等。这是PHP5及更高版本的核心特性,对编写可维护的代码至关重要。 6. **实训07.txt**: 该实训可能关注PHP的Web开发应用,...

    面试经验等多文档

    面试中,PHP的基础语法、数组操作、字符串处理、错误处理、文件系统操作、MySQL数据库交互、PHP与HTML的交互(如表单处理)、PHP的预定义变量和魔术常量、OOP(面向对象编程)概念以及PHP框架(如Laravel、Symfony)...

    PHP:倾斜PHP

    10. **PHP框架**:诸如Laravel、Symfony、Yii等PHP框架简化了Web开发过程,提供了预设的结构和最佳实践。 11. **PHP与前端技术结合**:PHP可以与HTML、CSS、JavaScript紧密协作,通过AJAX实现异步通信,提高用户...

    企业网站源码系统 v3.21

    Zend Optimizer则是PHP的一个重要组件,它对编译后的PHP代码进行优化,减少内存消耗,提高代码执行速度。版本3.2.8是针对PHP5的一个兼容版本,确保了系统在运行时的性能表现。 企业网站系统包含了前端和后端的完整...

    Yii框架弹出框功能示例

    - 《php面向对象程序设计入门教程》:深入理解面向对象编程在PHP中的应用,对于使用Yii框架非常有帮助。 - 《php字符串(string)用法总结》:字符串处理是PHP开发中的常见任务,了解其各种函数和用法能提升编码效率。...

Global site tag (gtag.js) - Google Analytics