PHP Developer / Programmer (NYC)
Next Step Systems
US-NY-New York

Justtechjobs.com Post A Job | Post A Resume

A Practical Approach to Object-Relational Mapping in PHP
by Kieran Mathieson
PHP applications use various technologies, like HTML, relational databases (RDB), JavaScript, object-oriented programming (OOP), and so on. Most of them work well together. For instance, PHP code can easily write JavaScript, JavaScript can use a browser's document object model (DOM) to change HTML, etc.
OOP and RDB don't fit together quite as well. When programmers write code mapping PHP classes to RDB tables, they need to make sure the classes do not become too dependent on each other. Otherwise, changes in one class will require changes in others, raising development and maintenance costs. If software changes become too expensive and take too much time, applications will restrict business innovation, rather than enabling it.
This paper offers a practical solution to the object-relational problem in PHP. "Practical" means an approach meeting the constraints that usually apply in application development:
  • Limited cash.
  • Limited time.
  • Limited expertise.
  • Shared or inexpensive dedicated servers not under developers' full control.
  • Basic tools like PHP and MySQL.
  • Sharing data between the application and other tools, like Access and Excel.
  • Handling authentication, permissions, transaction logging, error control, multi-user updates, and so on.
We'll use the term "application utility tasks" to refer to the things listed in the last bullet point. They often consume significant resources, sometimes more than the rest of the application. Carefully managing application utility tasks is important to application stability and performance. It's usually best to start building them in at the very beginning of a project, rather than try to add them later.
This paper assumes you're familiar with PHP, OOP, and relational databases. If you're not, you might want to consult these tutorials:
[ Next Page ]


Comments:
PHP ORM for Shared ServersDan Blaisdell03/03/09 11:09
Php Object GeneratorJake09/13/05 20:37
EZPDO: an easy ORM framework for PHP5xman10107/21/05 16:25
More to it - article is incompleteMilos Radenovic05/27/05 10:20
Database Tablesolivier02/25/05 20:06
RE: good basic design?jojo reyes01/25/05 01:45
Abstracting the database layerjojo reyes01/24/05 22:48
RE: agreedShankar01/17/05 13:21
good basic design?crivera12/08/04 18:49
RE: Breaks fundamental design principlesmmorales05/28/04 10:08
RE: Breaks fundamental design principlesBenjamin Smith04/24/04 03:29
RE: Breaks fundamental design principlesArt Hundiak04/06/04 13:48
RE: Breaks fundamental design principlesFerdinand Beyer04/03/04 06:41
Breaks fundamental design principlesJack Slocum03/27/04 02:32
Good basic design principlesJared White03/20/04 22:56
RE: agreed - maturity neededKieran Mathieson03/15/04 14:11
RE: agreedles03/13/04 09:13
PerformanceLars03/12/04 07:42
agreedCyril Doussin03/11/04 02:52
Code Reuse? Existing Alternativeskellan03/10/04 12:46
Well writtenSurjit Madiwalar03/10/04 05:40
 

If you are looking for help, please post on the appropriate forum here. Your questions will be answered much more quickly.

Add A Comment:

Name:

Email:

Subject:

Message:

To reduce spam posts, messages are now manually approved

You are not [logged in]. That means your account will not get credit for this post.