Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.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
PHP ORM_uu连接管理_Php_Orm - Fatal编程技术网

PHP ORM_uu连接管理

PHP ORM_uu连接管理,php,orm,Php,Orm,哪一个PHP ORM框架好且重量轻,还具有连接池和连接管理,就像hibernate框架一样因为PHP的运行方式,您实际上找不到任何等同于连接池的东西。事实上,你能得到的最接近的是持久连接,它有自己的陷阱 我个人喜欢,尽管称之为轻量级有点主观。我不完全确定“连接管理”是什么意思,但spreep设计用于处理多个数据库连接以及基于查询的主/从路由。通过某些优化(APC、Memcached等),您可以提高ORM的速度。对象水合作用之类的东西也有助于加快应用程序的速度 看看吧。这不适合所有人 (为了完整起

哪一个PHP ORM框架好且重量轻,还具有连接池和连接管理,就像hibernate框架一样

因为PHP的运行方式,您实际上找不到任何等同于连接池的东西。事实上,你能得到的最接近的是持久连接,它有自己的陷阱

我个人喜欢,尽管称之为轻量级有点主观。我不完全确定“连接管理”是什么意思,但spreep设计用于处理多个数据库连接以及基于查询的主/从路由。通过某些优化(APC、Memcached等),您可以提高ORM的速度。对象水合作用之类的东西也有助于加快应用程序的速度

看看吧。这不适合所有人

(为了完整起见,另一种流行的PHP ORM叫做Doctrine。我个人并不喜欢它。)

编辑

propel(对我来说)的一个优点是它与phing的集成。我认为,在jboss环境中,您会发现缺少代码部署过程之类的东西。对我来说,phing解决了很多问题。只要我必须安装phing才能推动工作,我就可以利用它在整个应用程序上进行部署


Phing可以滚动焦油球、zip文件、pear包,甚至RPM,如果你觉得勇敢的话。

我发现db.php orm非常轻巧,而且它不限制连接,你可以指定哪个连接上的哪个类的哪个表:

框架的缺乏似乎是新生的,github repo上的文档每周更新2-3次,但我已经在我的电子商务框架中使用了它,我可以说我完全满意

我不知道是否详细说明,但在db.php中定义连接链接时,也会为该链接指定所需的名称,如:

$database->link (new \db\link ('my_mysql_link_name', 'mysql:host=127.0.0.1', 'root', '1234'));
如果它不是默认链接(第一个链接),则必须将其指定给类(如果您的类的表位于非默认链接数据库中):

将该类表处理程序添加到数据库后:

/**
* link my_mysql_link_name
*/
class user
{

}
$database->add ('\user);
然后,该类表处理程序上的所有查询将在用户类指定的链接上执行:

$database->save (new \user());
所以上面的行将使用my_mysql_link_name连接链接进行查询

我还注意到一件有趣的事情,如果我在类属性之间设置了关系,那么如果相关字段表位于同一个连接链接上,db.php在同一查询中使用左连接获取相关行(一对一),否则它将使用单独的查询获取对象的相关行(您还可以在property doc comment中指定lazy关键字,以避免加载相关对象)

哦,您也可以像这样访问您的连接:
$database->link('name\u of_link')
$database->link()
作为默认连接链接,您只需将自己的类添加为数据库的链接,并覆盖所有链接方法,如下所述:


我最喜欢db.php的另一个特点是,它只需调用
$database->update()即可在所有链接上自动创建或同步数据库和表结构
。您想要一个轻量级的ORM,但您将其功能与Hibernate相比较,Hibernate远远不是轻量级的…您确定您想要什么吗?您好Jani Hartikainen,感谢您的快速响应,我正在寻找具有连接池和连接管理功能的PHP ORM框架例如hibernate…请给出您的建议..谢谢ramHi Victolla,是的..推进真的很好而且很简单的实现…也将通过原则..谢谢您的输入