Как работает ORM при использовании PDO в PHP? - PullRequest
1 голос
/ 24 декабря 2009

Я слышал, что PDO может делать некоторые ORM. Это хорошая идея придерживаться этого или я должен рассмотреть некоторые альтернативы, которые используют PDO для выполнения ORM?

Короче говоря, что я хочу сделать: я хочу автоматически сопоставить поля таблицы с переменными экземпляра. Геттеры и сеттеры создаются вручную. Однако я мог бы также подумать о создании ассоциативного массива как ivar, а затем просто назначить набор записей для этого массива. Затем получатели / установщики просто получают доступ к этому массиву с помощью соответствующего ключа. Но мне интересно, как PDO может помочь здесь сделать это проще?

Ответы [ 2 ]

2 голосов
/ 24 декабря 2009

рядом с предложениями Ахмеда вы также можете рассмотреть доктрину или реализацию php active record:

доктрина: http://www.doctrine -project.org /

активная запись:

Я обычно работаю с propel или активной записью (как часть cakePHP). Активная запись поддерживает цель вашего ассоциативного массива.

Для Propel вы можете достичь того же, заставив все (обязательные) классы расширить определенный класс uber. Это определено в вашей схеме базы данных, а затем сгенерировано во всех классах ORM. В своем Uber-классе вы можете заставить конструктор принимать ассоциативные массивы ... Так что если это ваша основная цель, используйте активную запись или PHP-фреймворк, который реализует активную запись.

1 голос
/ 24 декабря 2009

Вы можете найти эти ссылки полезными в ORM и PDO с php:

http://forum.kohanaphp.com/comments.php?DiscussionID=3349

http://my.opera.com/zomg/blog/2007/09/03/orm-in-php-using-propel

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...