我尝试使用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
但是当我在网络浏览器中测试时,我仍然会遇到同样的错误。你的建议是什么?
答案 0 :(得分:4)
最初它看起来像你的行:
$app= new Silex/Application();
实际应该阅读(注意反斜杠):
$app= new Silex\Application();
\
是命名空间分隔符,您的代码正在运行new Silex
然后将其除以Application()
,并且由于class Silex
不存在,编译失败。
希望能解决问题!
同时强>
我认为行$app['debug'] == true;
应该是$app['debug'] = true;
(单个等于) - double equals是一个等式测试,single equals是赋值。