2008-08-22 6 views
4

Большая часть моего опыта в стеке MSFT, но теперь я работаю над побочным проектом, помогая кому-то с личным сайтом с дешевым хостингом, который построен на стеке LAMP. Мои параметры установки дополнительных функций ограничены, поэтому мне интересно, как написать код доступа к данным без встраивания необработанных запросов в .php-файлы.Что такое хороший способ инкапсулировать доступ к данным с помощью PHP/MySQL?

Мне нравится держать вещи простыми, даже с .NET. Я вообще пишу хранимые процедуры для всего, и у меня есть вспомогательный класс, который обертывает все вызовы для выполнения процедур и возврата наборов данных. Я не ищу полномасштабную ORM, но это может быть способ пойти, и другие, которые рассматривают этот вопрос, могут искать это.

Помните, что я нахожусь в учетной записи GoDaddy за 7 долларов США, поэтому я ограничен тем, что уже установлено в их базовом пакете.

Редактировать: Спасибо rix0rr, Алан, Андерс, дракон, я проверю всех этих. Я редактировал вопрос, чтобы быть более открытым для решений ORM, так как они настолько популярны.

ответ

2

Посмотрите на Zend Framework, в частности Zend_Db. Он имеет уровень абстракции базы данных, который не требует ничего, кроме расширения MySQLi, и не является полноразмерной моделью ORM.

3

ActiveRecord, как представляется, представляет собой современное состояние. Однако я не могу рекомендовать какие-либо хорошие фреймворки PHP. Я попробовал Propel, который, хотя и неплохо, настроить не так просто (особенно на хосте, на котором вы ничего не можете установить).

В конечном счете, я перевернул свою собственную структуру ORM/ActiveRecord, которая не слишком много работает и очень поучительна. Я уверен, что другие люди могут рекомендовать хорошие фреймворки PHP.

2

rix0rrr hit on it a bit, в том, что многие инструменты являются болью для настройки. Конечно, у меня есть собственное решение этой проблемы, которая работает довольно хорошо в течение последних нескольких лет. Это проект под названием dbFacile

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

Вы упомянули, что не хотите вставлять необработанные запросы, но вы не хотите ORM, поэтому я немного запутался в той средней точке, которую вы надеетесь найти. У меня также есть ORM project, целью которого является минимальная настройка и простота в использовании.

Единственное требование для моих проектов - PHP5.

0

Я бы попробовал каркас. Zend Framework был указан. Symfony похоже. Он основан на идеях от Ruby on Rails.

0

Вы также можете взглянуть на Прадо. http://www.pradosoft.com/ Использует Active Record и DAO. Также, если вы используете .Net, то некоторые из форматирования и условные обозначения аналогичны.

 Смежные вопросы

  • Нет связанных вопросов^_^