[英]composer autoload wont work
我剛剛啟動了一個新的PHP項目,並且就在前面,我遇到了自動加載器的問題。 我搜索了錯誤並查閱了文檔( http://www.php-fig.org/psr/psr-4/ ),但問題仍然存在。
因此,我創建了一個最小的示例來縮小錯誤原因-但是,即使有了這個最小的示例,它也不會起作用:(
我的文件夾結構是這樣的:
+ src/
| + Xyz.php
+ composer.json
+ test.php
這是我的代碼
composer.json:
{
"name": "sg/ABC",
"description": "abc",
"autoload": {
"psr-4": {
"sg\\ABC\\": "src/"
}
}
}
Xyz.php:
<?php namespace sg\ABC;
class Xyz
{}
?>
test.php:
<?php namespace sg\ABC;
use sg\ABC\Xyz;
$a = new Xyz();
?>
即使運行composer install
顯示任何錯誤,運行代碼時我也立即收到此錯誤:
$ php test.php
PHP Fatal error: Class 'sg\ABC\Xyz' not found in /dir/x/test.php on line 5
Fatal error: Class 'sg\ABC\Xyz' not found in /dir/x/test.php on line 5
同樣,運行composer dump-autoload
(如本板中的建議)也無濟於事
您仍然需要包括composer autoload.php文件以包括已加載的庫。
您需要使用自動裝帶器..通常是require_once "path/to/vendor/autoload.php"
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.