【问题标题】:Fatal error: Class 'Silex' not found致命错误:未找到“Silex”类
【发布时间】:2012-05-02 05:13:10
【问题描述】:

我尝试使用 silex 来构建我的应用程序。当我尝试测试我的第一个应用程序时,我收到如下错误:

致命错误:在第 5 行的 /opt/local/apache2/htdocs/silex/try.php 中找不到类“Silex”

这是我的代码:

<?php
  #require_once __DIR__.'/silex.phar';  
  require_once 'phar://'.__DIR__.'/silex.phar/vendor/.composer/autoload.php';  
  #require_once 'phar://'.__DIR__.'/silex.phar/autoload.php';  
  $app= new Silex/Application();  
  $app->get('hello/{name}',function($name) use($app){  
     return 'Hello ' .$app->escape($name);  
  });  
  $app['debug'] == true;  
  $app->run();  
?>

我在搜索引擎中搜索了我的错误,我有一些建议,比如在 php.ini 中添加此代码:

extension=phar.so  
phar.readonly = Off  
phar.require_hash = Off  
detect_unicode = Off

但是当我在网络浏览器中进行测试时,我仍然遇到同样的错误。你有什么建议?

【问题讨论】:

    标签: php silex phar


    【解决方案1】:

    最初它看起来像你的线:

    $app= new Silex/Application();
    

    应该实际阅读(注意反斜杠):

    $app= new Silex\Application();
    

    \ 是命名空间分隔符,您的代码正在运行new Silex,然后将其除以Application(),由于class Silex 不存在,编译失败。

    希望能解决问题!

    还有:

    我认为$app['debug'] == true; 行应该是$app['debug'] = true;(单等号)——双等号是相等测试,单等号是赋值。

    【讨论】:

      猜你喜欢
      • 2014-08-11
      • 2017-07-27
      • 2012-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多