PHP DevCenter
oreilly.comSafari Books Online.Conferences.


The Practicality of OO PHP
Pages: 1, 2, 3

Should I Use OO PHP?

There are several factors that should determine whether you use OO PHP. For instance, some projects may require the use of OO PHP to ensure a successful completion, while in others, using OO PHP is not required and would only burden the workload.

When should you use OO PHP? When you:

  • have complex functions or code in your project
  • have a large number of functions or code blocks in your project
  • need to keep code organized
  • need to expand the code or project in the future
  • want to reuse your code for other projects
  • find you can't run certain functions more than once on a page without logical errors
  • are a true PHP geek :-)

When should you not use OO PHP? When you:

  • require only a few lines of code
  • will not be expanding your project
  • will not be using the code again
  • are on a very short time frame and your project isn't complex
  • have a boss who tells you not to

These are just suggestions. Use your own judgment when determining whether to use OO PHP. There are a million ways to skin a cat, and the same principle is true with programming: use whatever method works best for you (and those who have to read your code later). There truly are some major benefits to working with OO PHP, however.

Benefits of OO PHP

Among the numerous benefits of using OO PHP, the three that stand out are productivity, organization, and efficiency. With productivity, OO PHP can save time or increase workflow. For organization, OO PHP can keep your code and files organized. By efficiency, OO PHP can make your project and future projects run smoothly.


The primary benefit of using OO PHP is the increase in productivity. By this I mean you can save time or boost your workflow. After you create a class file, the next time you use it in a project you've automatically increased productivity, because you've saved the time of having to go back and reprogram something. Now you may think that a list of functions is good enough to save you time--again, I was victim to this early on--but eventually you will find that you could have better used the time spent customizing the function list specifically for the new project. In most cases, a simple class list, carefully programmed, can save you multiple hours of programming repetitive (not to mention really boring) code.

Here are a few examples of productivity that use a small database extraction tool that I whipped up a while back. It originally extracted a single row into a format that a Flash file could read, but I later expanded it for HTML output (having tired of typing repetitive SQL statements). For the sake of having a more interesting example progression, assume that the class starts off with the HTML output ability only. You can download this example class and support files at the end of this article.


Reusability in this case is the process of using the same class file for multiple projects. Have you ever needed to reuse your code for another project? Most developers have, and, believe it or not, sometimes it's hard to port your code from one project to another. Functions could be spread out over multiple pages, or complex code could be embedded within HTML, or other various nuisances could make it hard for a smooth reuse of your code. There is a solution with OO PHP.

The process of instantiating classes provides an easy way to implement existing code into a new or already existing project. You don't have to skim through line upon line of existing code to pull out the little snippets needed for your project to function properly. All of your code is within a single file that you can easily include on any page and put to use.

For example, suppose you are using my Data Extraction class for web site A (sitea.php):


$data = new DataExtraction();

$data->deWhereStatement("WHERE id = '2'")
$data->deExtractDataHtml("users_table", "id", "username", "email");

echo("Hello, ".$test->deGetData("username")."!");

Assuming the user "TestUser" has an ID of 2 in the users_table table, this will output the text Hello, TestUser! If a web site calls for a similar approach in terms of requesting quick information from a web site, you can simply reuse it.

The next example is from web site B (siteb.php):


$data = new DataExtraction();

$data->deWhereStatement("WHERE email = ''")
$data->deExtractDataHtml("clientlist_table", "id", "email", "balance");

echo("The balance for ".$test->deGetData("email"));
echo(" is $".$test->deGetData("balance")."!");

Assuming the email address is in the clientlist_table table with a balance of $2,041, this will output The balance for is $2041!

As you can see, OO PHP provides a quick and easy outlet for reusing code.

Pages: 1, 2, 3

Next Pagearrow

Valuable Online Certification Training

Online Certification for Your Career
Earn a Certificate for Professional Development from the University of Illinois Office of Continuing Education upon completion of each online certificate program.

PHP/SQL Programming Certificate — The PHP/SQL Programming Certificate series is comprised of four courses covering beginning to advanced PHP programming, beginning to advanced database programming using the SQL language, database theory, and integrated Web 2.0 programming using PHP and SQL on the Unix/Linux mySQL platform.

Enroll today!

Sponsored by: