Allows to efficiently load Zend Framework classes without need to additionally call require_once() or Yii::import().
Unpack extension to protected/extensions/
.
Copy ZF directory Zend
to protected/vendors/
.
You can use special service to get only required
ZF classes.
It is required for this extension and allows to load ZF classes faster.
You can do search-replace from your IDE: search require_once
replace to //require_once
.
Altenatively you can use console:
GNU:
% cd path/to/ZendFramework/library
% find . -name '*.php' -not -wholename '*/Loader/Autoloader.php' \
-not -wholename '*/Application.php' -print0 | \
xargs -0 sed --regexp-extended --in-place 's/(require_once)/\/\/ \1/g'
MacOSX:
% cd path/to/ZendFramework/library
% find . -name '*.php' | grep -v './Loader/Autoloader.php' | \
xargs sed -E -i~ 's/(require_once)/\/\/ \1/g'
% find . -name '*.php~' | xargs rm -f
We need to register loader before application is run:
[php]
define('YII_DEBUG', true);
$webRoot=dirname(__FILE__);
require_once(dirname($webRoot).'/framework/yii.php');
$configFile=$webRoot.'/../protected/config/main.php';
$app = Yii::createWebApplication($configFile);
Yii::import("ext.yiiext.components.zendAutoloader.EZendAutoloader", true);
// you can load not only Zend classes but also other classes with the same naming
// convention
EZendAutoloader::$prefixes = array('Zend', 'Custom');
Yii::registerAutoloader(array("EZendAutoloader", "loadClass"), true);
$app->run();