我正在学习Composer自动加载。我的PSR-4有一些问题。
我正在关注本教程:https://vegibit.com/composer-autoloading-tutorial/
我已经检查了几个小时的代码,但是在浏览器中加载脚本时仍然遇到相同的问题:
致命错误:未捕获错误:未找到类“ VegibitLibraryGreeting” 在C:\ PHPWebPages \ aldemo \ aldemo4 \ index.php:5堆栈跟踪中:#0 {main} 在第5行的C:\ PHPWebPages \ aldemo \ aldemo4 \ index.php中抛出
我已经尝试过类似问题中提出的几种解决方案,但尚未解决。
我附上了一些截图:
请有人帮我找出发生此错误的原因。 预先感谢。
注意:
在解决方案之后,我将显示新代码,以使任何有相同问题的人都可以查看解决方案:
答案 0 :(得分:2)
greeting.php:
您不能在同一文件中声明两个名称空间。命名空间声明应该在PHP文件的开头。
您还应该声明composer.json
中出现的名称空间:
namespace Vegibit\Library;
将此代码拆分为单独的文件。
index.php:
$vb = new Vegibit\Library\Greeting();