Using the Composer Autoloader
Warning. These examples work with the version 2.x of the Jaxon library.
This example illustrates the use of the Composer autoloader.
By default, the Jaxon library implements a simple autoloading mechanism by require_once
'ing the corresponding PHP file for each missing class.
When provided with the Composer autoloader, the Jaxon library registers all directories with a namespace into the PSR-4
autoloader, and it registers all the classes in directories with no namespace into the classmap
autoloader.
How it works
Include the Composer autoload.php
file, and call the $jaxon->useComposerAutoloader()
function.
Register the classes in the namespaces defined here with Jaxon.
require(__DIR__ . '/vendor/autoload.php');
$jaxon = jaxon();
// Use the Composer autoloader
$jaxon->useComposerAutoloader();
// Add class dirs with namespaces
$jaxon->addClassDir('/jaxon/class/dir/app', 'App');
$jaxon->addClassDir('/jaxon/class/dir/ext', 'Ext');
// Check if there is a request.
if($jaxon->canProcessRequest())
{
// When processing a request, the required class will be autoloaded
$jaxon->processRequest();
}
else
{
// The Jaxon objects are registered only when the page is generated
$jaxon->registerClasses();
}