在zend framework 1.12中添加库时遇到问题,我必须在每个路由之前放置此脚本来获取库:
require_once Zend_Registry::get('lib_dir')."....
有没有办法让它变得更容易?,因为要修改很多文件。提前问候和感谢!
我的结构如下:
>Auth
>application
>configs
>controllers
>forms
>models
>views
>Bootstrap.php
>docs
>library
>lib
>Google
>Auth
>Cache
>Client.php
......
在我的'UserController'中,我有以下内容:
require_once(__DIR__.'/lib/Google/Client.php');
Zend_Loader_Autoloader::getInstance();
$client_id = '1255128545685269859856666.apps.googleusercontent.com';
$client_secret = 'sadFGHDMsdfgh-42552';
$redirect_uri = 'http://localhost/auth/public/user/login';
$client = new Google_Client();
$client->setApplicationName("Procesos");
$client->setClientId($client_id);
$client->setClientSecret($client_secret);
$client->setRedirectUri($redirect_uri);
$client->addScope("https://www.googleapis.com/auth/userinfo.email", "https://www.googleapis.com/auth/userinfo.profile"); /* Datos Gmail y Google+ */
在我的'Bootstrap.php'中,我有以下内容:
<?php
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
protected function _initAutoload() {
$loader = Zend_Loader_Autoloader::getInstance();
$loader->registerNamespace('lib_');
}
}
的application.ini
includePaths.library = APPLICATION_PATH "/../library"
autoloaderNamespaces[] = "lib_"
答案 0 :(得分:0)
根据您在项目中的位置,我建议您将库依赖项迁移到composer:
如果你能够这样做,你就不必费力地添加任何其他库,因为大多数库在Composer上都可用,并且它们由Composer自动加载器自动加载。
有点脏,您仍然可以使用composer自动加载Google Api,只需将您的库添加到composer中,然后将您的composer自动加载器包含在index.php中(或者调用前端控制器文件)。
还有其他解决方案,但它们都需要包含许多文件。