LJT*_*LJT 5 php apache zend-framework2
我正在尝试使用一个简单的LAMP站点,但似乎无法让我的本地Apache实例接收Zend框架.我在Windows上开始使用XAMPP,然后尝试使用手动Apache/PHP安装的Centos 6 VM,但仍然在下面的两个版本上都得到了相同的错误.phpinfo()工作正常,网站的其他部分也是如此.
Fatal error: Class 'Zend\Log\Logger' not found in /var/www/html/site/public/test.php on line 20
Run Code Online (Sandbox Code Playgroud)
我的网站代码是一个调用Zend框架记录器的相当简单的测试,如下所示
use Zend\Log\Logger;
use Zend\Log\Writer;
echo "<p>Hello world</p>";
echo $_POST["VIN"];
phpinfo();
$logger = new Zend\Log\Logger;
$writter = new Zend\Log\Writer\Stream('php://output');
$logger->addWriter($writer);
?>
Run Code Online (Sandbox Code Playgroud)
我的Apache linux httpd.conf是
<VirtualHost *:80>
DocumentRoot /var/www/html/site/public
<Directory /var/www/html/site/public>
DirectoryIndex test.php
AllowOverride All
Order allow,deny
Allow from all
</Directory>
Run Code Online (Sandbox Code Playgroud)
我的Zend框架位于/ var/www/html/site/library/Zend,我还将/ var/www/html/site/library添加到php.ini include中.
对于其他遇到此错误的人,您需要使用自动加载器,Zend 框架入门 wiki 中没有提到这一点。
<?php
use Zend\Loader\StandardAutoloader;
use Zend\Log\Logger;
use Zend\Log\Writer;
require_once dirname((__DIR__)).'\library\Zend\Loader\StandardAutoloader.php';
$loader = new StandardAutoloader(array('autoregister_zf' => true));
$loader->register();
echo "<p>Hello world</p>";
echo $_POST["VIN"];
phpinfo();
$logger = new Zend\Log\Logger;
$writer = new Zend\Log\Writer\Stream('php://output');
$logger->addWriter($writer);
?>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2795 次 |
最近记录: |