HomePHP Page 2 - Building A Generic Error Reporting Class In PHP
Back To Class - PHP
The traditional method of building dynamic, PHP-based Web sites - mixing HTML elements with PHP code - can result in mangled Web pages (and much user angst) if errors take place during script execution. But yes, you can avoid the ugliness - plug in our handy error reporting class, which provides a simple way of trapping script errors and generating consistent, user-friendly error screens.
Before we begin, let's just go over the basics quickly:
In PHP, a "class" is simply a set of program statements which perform a specific task. A typical class definition contains both variables and functions, and serves as the template from which to spawn specific instances of that class.
Once a class has been defined, PHP allows you to spawn as many instances of the class as you like. These instances of a class are referred to as "objects". Each of these instances is a completely independent object, with its own properties and methods, and can thus be manipulated independently of other objects.
This comes in handy in situations where you need to spawn more than one instance of an object - for example, two simultaneous database links for two simultaneous queries, or two shopping carts. Classes also help you to separate your code into independent modules, and thereby simplify code maintenance and changes.
A class definition typically looks like this:
<?php
class ShoppingCart
{
// this is where the properties are defined
var
$items;
var $quantities;
var $prices;
...
// this is where the methods are
defined
function validate_credit_card()
{
// code goes here
}
...
}
?>
Once the class has been defined, an object can be spawned with the "new" keyword
and assigned to a PHP variable,
<?php
$myCart = new ShoppingCart;
?>
which can then be used to access all object methods and properties.
<?php
// accessing properties
$myCart->items = array("eye of newt", "tongue
of frog", "wing of bat",
"hair of dog"); $myCart->quantities = array(4, 2, 11,
1);
// accessing methods
$myCart->validate_credit_card();
?>