I持って一つのファイルDHMOFramework/libに/コア/ core.phpのこのコードで:別のファイルで1つのファイルのクラスを正しく使用する方法は?
<?php
namespace DHMOFramework\lib\Core\Core;
/**
* Main DHMOFramework class
*/
$registeredCommands = [];
class Core
{
function registerCommand($command) {
global $registeredCommands;
$registeredCommands[$command] = [];
}
function registerSubCommand($commandname, $subcommand, $args, $helpmsg) {
global $registeredCommands;
$structure = array('command' => $commandname, 'subcommand' => $subcommand, 'args' => $args, "helpmsg" => $helpmsg);
array_push($registeredCommands[$commandname], $structure);
echo $registeredCommands;
}
}
そして、私は、このコードを持つ別のファイルtest.phpを持っている:
<?php
require_once "DHMOFramework/lib/Core/Core.php";
$dhmo = new Core();
$dhmo->registerCommand("command");
$dhmo->registerSubCommand("command", "subcommand", ["arg1" => [true, string], "arg2" => [true, boolean]], "Usage: /command subcommand <arg1> <arg2>");
をそして、私はこれを取得しておきますtest.phpファイルを実行するとエラーが発生します。
Fatal error: Class 'Core' not found in /home/ubuntu/workspace/test.php on line 5
Call Stack:
0.0001 232464 1. {main}() /home/ubuntu/workspace/test.php:0
どのように修正できますか?
で
チェックアウト名前空間は、両方のファイルへの絶対パスを含めてください。すなわち:/home/ubuntu/workspace/test.php しかし、あなたのワークスペースに関連してDHMOFramework/lib/Core/Core.phpはどこですか? (もしあなたがちょうど/home/ubuntu/workspace/DHMOFramework/lib/Core/Core.phpにあるようなものを持っていればもっと良いでしょう) – gabeio