Application interfaces and objects are built using PHP classes:
<?php /** * App_Foo:: defines an API for implementing Foo backends for App. * * @author Jon Parise <jon@horde.org> * @version $Revision: 1.1 $ * @since App 0.1 * @package app */ class App_Foo {
var $params;
function &factory($driver, $params = array()) { $driver = strtolower($driver); @include_once dirname(__FILE__) . '/Foo/' . $driver . '.php'; $class = 'App_Foo_' . $driver; if (class_exists($class)) { return new $class($params); } else { return false; } }
function doSomething($argument) { // abstract method }
} ?>
|