I have a folder with custom classes in a ZF 1.10 application. The folder is located in /library. How can I tell ZF where they are? Both application.ini and index.php set the path to the library but then ZF can't find the files.
Thank you
We often come across a problem of writing our own custom functions or classes and where to place them.
So to add custom class (or custom library) one can use zend framework's autoloader namespaces.
Add the below line in application.ini file
autoloaderNamespaces.custom = "Custom_"
OR
autoloaderNamespaces[] = "Custom_"
All the custom classes will be kept under library directory. Create a folder name 'Custom' (which is defined in application.ini) in the library directory.
Classes will be prefixed with 'Custom_' at declaration in the file (e.g. Custom_Test)
Now we can use this class as $test = new Custom_Test()
, in our application.
There are many possible solutions. The most common, when using Zend Application, is to register the namespace in application.ini
by adding:
autoloaderNamespaces[] = "Example_"
Other solutions:
include_path
using set_include_path()
(ad hoc solution)Set up autoloader in Bootstrap.php
:
protected function _initAutoloader()
{
$autoloader = Zend_Loader_Autoloader::getInstance();
$autoloader->registerNamespace("Example"); // or Example_
}
Eventually, set up module or resource autoloader, eg.
$resourceLoader->addResourceTypes(array(
'acl' => array(
'path' => 'acls/',
'namespace' => 'Acl',
),
'example' => array(
'path' => 'examples/',
'namespace' => 'Example',
),
));
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With