PHP Fatal error: Class 'Yaf_Application' not found
由于yaf的命令行模式下加载的php.ini跟website模式下是不同的,需要检查该php.ini有无加载yaf。
执行
php -m
查看有无yaf,如果没有就添加上。ubuntu下cli php.ini路径是/etc/php5/cli
加上
[yaf] yaf.environ = dev yaf.library = NULL yaf.cache_config = 0 yaf.name_suffix = 1 yaf.name_separator = "" yaf.forward_limit = 5 yaf.use_namespace = 0 yaf.use_spl_autoload = 0 extension=yaf.so
注意:
extension=yaf.so
后面不要带空格,否则会报找不到
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/xxx/yaf.so ' - /usr/lib/php5/xxx/yaf.so : cannot open shared object file: No such file or directory in Unknown on line 0
的错误
如果有,用
php -i | grep yaf
看看是不是开启了
yaf yaf support => enabled Supports => http://pecl.php.net/package/yaf yaf.action_prefer => Off => Off yaf.cache_config => Off => Off yaf.environ => dev => dev yaf.forward_limit => 5 => 5 yaf.library => no value => no value yaf.lowcase_path => Off => Off yaf.name_separator => no value => no value yaf.name_suffix => On => On yaf.st_compatible => Off => Off yaf.use_namespace => Off => Off yaf.use_spl_autoload => Off => Off
开启了就没问题了。
另外,命令行模式的入口路径建议跟website分开。例如website用./public/ cli用./cli