ホームページ  >  に質問  >  本文

thinkphp - PHP如何实现ORM?

PHP如何实现ORM?类似于Hibernate这样的?有哪些框架或者类库可以帮助实现?

迷茫迷茫2749日前708

全員に返信(7)返信します

  • PHP中文网

    PHP中文网2017-04-10 14:44:23

    重一点的功能全一点的可以用doctrine, annotation用起来还是很爽的

    返事
    0
  • PHP中文网

    PHP中文网2017-04-10 14:44:23

    Yii,CakePHP……

    返事
    0
  • PHPz

    PHPz2017-04-10 14:44:23

    ORM的话不是官方自带的PDO类就行了么?http://cn2.php.net/manual/zh/book.pdo.phpX3X

    (一直以为ORM和数据库操作是一个意思,然后就武断的说了PDO,咳咳)...

    回答这个问题的主要目的是来推荐类库的啦,我一般使用 http://medoo.in 这款,个人觉得非常不错的哦,顺带说一句,是 http://catfan.me 写的呢。

    返事
    0
  • 怪我咯

    怪我咯2017-04-10 14:44:23

    相当多的主流框架用的是 Active Record 实现的 ORM, 一样用、

    返事
    0
  • 迷茫

    迷茫2017-04-10 14:44:23

    推荐:http://www.notorm.com/
    PS:PHP没有真正的ORM.

    返事
    0
  • 大家讲道理

    大家讲道理2017-04-10 14:44:23

    可以试一下arraydb,这个是infoq对arraydb的介绍 http://www.infoq.com/cn/articles/arrayDB

    返事
    0
  • 高洛峰

    高洛峰2017-04-10 14:44:23

    推荐一个短小精悍的ActiveRecord库,lloydzhou/activerecord · GitHub, 可以实现类似Yii的relation的效果。文档地址:http://lloydzhou.github.io/activerecord/

    class User extends ActiveRecord{
      public $table = 'user';
      public $primaryKey = 'id';
      public $relations = array(
        'contacts' => array(self::HAS_MANY, 'Contact', 'user_id')
      );
    }
    class Contact extends ActiveRecord{
    }
    $user = new User();
    // find one user
    var_dump($user->notnull('id')->orderby('id desc')->find());
    echo "\nContact of User # {$user->id}\n";
    // get contacts by using relation:
    //   'contacts' => array(self::HAS_MANY, 'Contact', 'user_id'),
    var_dump($user->contacts);

    返事
    0
  • キャンセル返事