Class ClassLoader
ClassLoader implements a PSR-0, PSR-4 and classmap class loader.
$loader = new \Composer\Autoload\ClassLoader();
// register classes with namespaces $loader->add('Symfony\Component', DIR.'/component'); $loader->add('Symfony', DIR.'/framework');
// activate the autoloader $loader->register();
// to enable searching the include path (eg. for PEAR packages) $loader->setUseIncludePath(true);
In this example, if you try to use a class in the Symfony\Component
namespace or one of its children (Symfony\Component\Console for instance),
the autoloader will first look for the class under the component/
directory, and it will then fallback to the framework/ directory if not
found before giving up.
This class is loosely based on the Symfony UniversalClassLoader.
Methods summary
public
|
|
public
|
|
public
|
|
public
|
|
public
|
|
public
|
#
addClassMap( array $classMap )
Parameters
- $classMap
- Class to filename map
|
public
|
#
add( string $prefix, array|string $paths, boolean $prepend = false )
Registers a set of PSR-0 directories for a given prefix, either
appending or prepending to the ones previously set for this prefix.
Registers a set of PSR-0 directories for a given prefix, either
appending or prepending to the ones previously set for this prefix.
Parameters
- $prefix
- The prefix
- $paths
- The PSR-0 root directories
- $prepend
- Whether to prepend the directories
|
public
|
#
addPsr4( string $prefix, array|string $paths, boolean $prepend = false )
Registers a set of PSR-4 directories for a given namespace, either
appending or prepending to the ones previously set for this namespace.
Registers a set of PSR-4 directories for a given namespace, either
appending or prepending to the ones previously set for this namespace.
Parameters
- $prefix
- The prefix/namespace, with trailing '\'
- $paths
- The PSR-4 base directories
- $prepend
- Whether to prepend the directories
Throws
InvalidArgumentException
|
public
|
#
set( string $prefix, array|string $paths )
Registers a set of PSR-0 directories for a given prefix,
replacing any others previously set for this prefix.
Registers a set of PSR-0 directories for a given prefix,
replacing any others previously set for this prefix.
Parameters
- $prefix
- The prefix
- $paths
- The PSR-0 base directories
|
public
|
#
setPsr4( string $prefix, array|string $paths )
Registers a set of PSR-4 directories for a given namespace,
replacing any others previously set for this namespace.
Registers a set of PSR-4 directories for a given namespace,
replacing any others previously set for this namespace.
Parameters
- $prefix
- The prefix/namespace, with trailing '\'
- $paths
- The PSR-4 base directories
Throws
InvalidArgumentException
|
public
|
#
setUseIncludePath( boolean $useIncludePath )
Turns on searching the include path for class files.
Turns on searching the include path for class files.
Parameters
|
public
boolean
|
#
getUseIncludePath( )
Can be used to check if the autoloader uses the include path to check
for classes.
Can be used to check if the autoloader uses the include path to check
for classes.
Returns
boolean
|
public
|
#
setClassMapAuthoritative( boolean $classMapAuthoritative )
Turns off searching the prefix and fallback directories for classes
that have not been registered with the class map.
Turns off searching the prefix and fallback directories for classes
that have not been registered with the class map.
Parameters
|
public
boolean
|
#
isClassMapAuthoritative( )
Should class lookup fail if not found in the current class map?
Should class lookup fail if not found in the current class map?
Returns
boolean
|
public
|
#
setApcuPrefix( string|null $apcuPrefix )
APCu prefix to use to cache found/not-found classes, if the extension is enabled.
APCu prefix to use to cache found/not-found classes, if the extension is enabled.
Parameters
|
public
string|null
|
#
getApcuPrefix( )
The APCu prefix in use, or null if APCu caching is not enabled.
The APCu prefix in use, or null if APCu caching is not enabled.
Returns
string|null
|
public
|
#
register( boolean $prepend = false )
Registers this instance as an autoloader.
Registers this instance as an autoloader.
Parameters
- $prepend
- Whether to prepend the autoloader or not
|
public
|
#
unregister( )
Unregisters this instance as an autoloader.
Unregisters this instance as an autoloader.
|
public
boolean|null
|
#
loadClass( string $class )
Loads the given class or interface.
Loads the given class or interface.
Parameters
- $class
- The name of the class
Returns
boolean|null True if loaded, null otherwise
|
public
string|false
|
#
findFile( string $class )
Finds the path to the file where the class is defined.
Finds the path to the file where the class is defined.
Parameters
- $class
- The name of the class
Returns
string|false The path if found, false otherwise
|