我正在尝试为Codeigniter 4创建我的第一个作曲家包。但是,我总是得到一个错误Class 'Myapp\Settings\Greet' not found
。我完全迷路了。
我在ThirdParty文件夹中创建了一个名为myapp-settings的文件夹。该文件夹内部是另一个名为src和composer.json
.
这是它的内容composer.json
{
"name": "myapp/settings",
"description": ".",
"license": "MIT",
"minimum-stability": "dev",
"autoload": {
"psr-4": {
"Myapp\\Settings\\": "src"
}
},
"require": {}
}
我在名为src的文件夹中创建了一个测试文件Greet.php
<?php namespace Myapp\Settings;
class Greet
{
public function hello()
{
return 'Hey, there!';
}
}
在代码点火器上App\Config\Autoload.php
public $psr4 = [
'Myapp\Settings' => APPPATH . 'ThirdParty/myapp-settings/src'
];
然后在codeigniter的默认控制器上我调用了它。
<?php namespace App\Controllers;
use Myapp\Settings\Greet;
class Home extends BaseController
{
public function index()
{
$h = new Greet();
echo $h->hello();
}
//--------------------------------------------------------------------
}
一旦我运行它,我就会得到一个错误Class 'Myapp\Settings\Greet' not found
。APPPATH\Controllers\Home.php at line 9
. 我怎样才能解决这个问题?