Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/263.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
“使用”的优势;定义为;ORM:s在PHP中?_Php_Codeigniter_Activerecord_Orm - Fatal编程技术网

“使用”的优势;定义为;ORM:s在PHP中?

“使用”的优势;定义为;ORM:s在PHP中?,php,codeigniter,activerecord,orm,Php,Codeigniter,Activerecord,Orm,在使用Codeigniter一段时间后,我完全爱上了编写mySQL查询的ActiveRecord方式。现在,当我在另一个非codeigniter项目上工作时,有人建议我使用ORM来处理DB映射,这听起来很不错,但是在研究了Prope&Doctrine之后,我变得非常害怕包含数据库结构的额外配置文件,或多或少 为什么这些ORM:s定义了数据库结构?与未定义的ORM(如与codeIgniter捆绑在一起的ORM)相比,它有什么优势?。其要点是,ORMs(ActiveRecord是一种常见的ORM模式

在使用Codeigniter一段时间后,我完全爱上了编写mySQL查询的ActiveRecord方式。现在,当我在另一个非codeigniter项目上工作时,有人建议我使用ORM来处理DB映射,这听起来很不错,但是在研究了Prope&Doctrine之后,我变得非常害怕包含数据库结构的额外配置文件,或多或少


为什么这些ORM:s定义了数据库结构?与未定义的ORM(如与codeIgniter捆绑在一起的ORM)相比,它有什么优势?

。其要点是,ORMs(ActiveRecord是一种常见的ORM模式)有助于实现数据库独立性和对常见查询的快速访问。缺点是ORM比直接SQL“重”。对于大多数应用程序,90%的数据访问都是相当标准化的,因此ORM有助于缩短上市时间


这取决于设计,一些ORM的设计注重易用性而不是速度。在Java世界中,Hibernate ORM需要大量的XML配置,但它具有惊人的灵活性和相当高的性能。在CakePHP中,ORM配置非常简单,但缺点是ORM代码更重。我的观点是,易用性是一个更好的设计,以目前的行业状况。程序员时间>硬件成本,因此使用节省程序员50%时间的技术比使用速度快50%的ORM更好地利用资源。