doctrine
doctrine
Doctrine是一组PHP库,主要专注于提供持久化服务和相关功能。其最知名的子项目包括基于数据库抽象层的对象关系映射(NHibernate)。Doctrine的关键特性之一是,可以使用Doctrine Query Language(DQL)编写数据库查询,这是一种面向对象的SQL方言。symfony和Laminas等主要PHP框架都有官方支持Doctrine,而LaravelCodeIgniter等框架也有第三方Doctrine包可供使用。
用例
Doctrine遵循Active Record Pattern模式(一个对象对应一个数据表),例如,开发者创建一个新的user,他/她可以使用下面的代码来代替SQL
= new User();
-\u003ename = "john";
-\u003epassword = "doe";
-\u003esave();
echo "The user with id -\u003eid has been saved.";
对象关系功能可被增加到对象本身,而不是分散在各个应用程序中,这使得软件更易维护。
功能
Doctrine可以从已有的数据库生成对象类,开发者可以指定表关系及添加自定义函数,而不需要像其他框架那样去生成和维护复杂的XML数据。
Doctrine的另一个特点是使用面向对象写数据查询语言,这被称为DQL(Doctrine Query Languages)。
Doctrine会自动执行joins并会获取与其关联的对象,小型项目可以轻松地创建而不必写查询语句。
其他主要功能
1.支持树形结构的数据
2.支持hooks(能够难和修改数据库input和output的功能)和事件监听
3.支持缓存,利用memcached, SQLite或APC
4.ACID传输
5.model行为 (sluggable , timestampable ,嵌套设置,国际化,审计日志,搜索索引)
6.数据库升级
参考资料

Warning: Invalid argument supplied for foreach() in /www/wwwroot/newbaike1.com/id.php on line 362
目录
概述
用例
功能
其他主要功能
参考资料