新しい変数クラスを使用すると、PHP でエラーが表示されるのはなぜですか?
namespace Demo;<br />use Demo\Controller\DemoController;<br /><br />$c_str=$_GET['c'];<br />$c_name="DemoController";<br /><br />require 'Controller/'.$c_name.'.php';<br /><br />$method=$_GET['a'];<br /><br />$demo=new $c_name; // 我在这块手工填写: $demo=new DemoController; 是没问题的,换成$c_name 就报错<br />$demo->$method();
ログイン後にコピー
-----ソリューションアイデア--------------------- -namespace Demo;
use DemoControllerDemoController;
パスが正しいことを確認してください
------ソリューションのアイデア-------- - -------------そうですよね?
DemoController は DemoController 名前空間の下にあります
$c_name="ControllerDemoController";
も可能です
さらに、次の点にも注意してください:
DemoControllerDemoController を使用します。
DemoControllerDemoController 名前空間
を使用するためですが、DemoController はクラス
であるため、実際にはこの名前空間はありません。
use DemoControllerDemoController as DemoController;
と記述すると、 $c_name=デモコントローラー";