0

我正在尝试为Codeigniter 4创建我的第一个作曲家包。但是,我总是得到一个错误Class 'Myapp\Settings\Greet' not found。我完全迷路了。

我在ThirdParty文件夹中创建了一个名为myapp-settings的文件夹。该文件夹内部是另一个名为srccomposer.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 foundAPPPATH\Controllers\Home.php at line 9. 我怎样才能解决这个问题?

4

0 回答 0