使用PackageLoader加载扳手类的问题

我正在尝试使用PackageLoader加载Wrench库,但无法使其正常工作。我的代码如下。


include __DIR__.'/PackageLoader.php';

$loader = new PackageLoader\PackageLoader();

$loader->load(__DIR__."/vendor/wrench/wrench");


$app = new class implements \Wrench\Application\DataHandlerInterface

{

    public function onData(string $data, \Wrench\Connection $connection): void

    {

        $connection->send($data);

    }

};

我得到这个错误


致命错误:在第13行的C:\ Users \ desbest \ Documents \ UniServerZ \ www \ sugarchat \ includes \ actions.php中找不到接口'Wrench \ Application \ DataHandlerInterface'


composer.json加载库时,它会找到文件。


我该如何解决?


喵喔喔
浏览 177回答 2
2回答

红糖糍粑

创建了屏幕截图中显示的结构后,您的代码将正确执行您的脚本在屏幕快照中的扳手文件。php wrench.php尚无任何有用的代码,但似乎至少一切正常。如您所见,我将扳手克隆到的结构内,composer-file-loader并创建了类似于您的代码中所使用的结构。

汪汪一只猫

您不能使用未注册的名称空间。Composer会为您执行此操作,因此,我建议您使用composer。如果您设置为不使用作曲家,则需要使用功能spl_autoload_register。spl_autoload_register([     'Wrench\\Application\\DataHandlerInterface' => 'PATH/TO/FILE.php']);
打开App,查看更多内容
随时随地看视频慕课网APP