Bei einem meiner alten PHP-Projekte bin ich beim Update auf Zend Framework 1.8 gerade drauf gestoßen, dass ein paar Methoden des Zend_Loader als deprecated markiert wurden:

Notice: Zend_Loader::Zend_Loader::registerAutoload is deprecated as of 1.8.0 and will be removed with 2.0.0; use Zend_Loader_Autoloader instead in /path/to/Zend/Loader.php on line 23 Notice: Zend_Loader::Zend_Loader::autoload is deprecated as of 1.8.0 and will be removed with 2.0.0; use Zend_Loader_Autoloader instead in /path/to/Zend/Loader.php on line 42

Ich hatte im Code folgende Zeilen verwendet:

1
2
require_once 'Zend/Loader.php';
Zend_Loader::registerAutoload();

Dies muss einfach nur durch folgende Zeilen ersetzt werden:

1
2
require_once 'Zend/Loader/Autoloader.php';
$loader = Zend_Loader_Autoloader::getInstance();

Die weiteren Konfigurationen sind in der Dokumentation des Autoloaders nachzulesen.

Hat man im library-Ordner beispielsweise noch eigene Libraries im Ordner Wolfuli abgelegt, so muss man diese im Namespace hinzufügen:

1
$autoloader->registerNamespace('Wolfuli_');

Update: In Zend Framework 1.8.1 wurde ein Proxy von Zend_Loader::registerAutoload() auf Zend_Loader_Autoloader eingerichtet, der auch gleichzeitig den FallbackAutoloader setzt.