drip5880 2013-03-29 05:26
浏览 53
已采纳

找不到PHP前端控制器类(命名空间)

The following PHP code

public function go() 
{
    $controller = ucfirst($this->getController());
    $method = $this->getAction();

    require_once VENDOR_PATH . DS . 'Core/Controller/Controller.php';
    require_once VENDOR_PATH . DS . 'Application/Controller/' . $controller . '.php';

    $ctl = new $controller;
    $ctl->$method();
}

Is producing a

Fatal error: Class 'Index' not found in /path/to/core/Dispatch.php on line 108

However, I verified that both the core controller and application controllers are loading.

Controller.php:

namespace Core\Controller;

class Controller
{

   public function __construct()
   {
       // @TODO
   }
}

Index controller

namespace Application\Controller;

use Core\Controller\Controller;


class Index extends \Core\Controller\Controller {

    public $input;

    public function __construct() 
    {
        parent::__construct();
        die('In Application Controller');
    }
}
  • 写回答

1条回答 默认 最新

  • dtoka218420 2013-03-29 05:39
    关注

    In this line $ctl = new $controller; $controller variable must contains full path, including namespaces

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?
  • ¥15 网络通信安全解决方案
  • ¥50 yalmip+Gurobi
  • ¥20 win10修改放大文本以及缩放与布局后蓝屏无法正常进入桌面
  • ¥15 itunes恢复数据最后一步发生错误
  • ¥15 关于#windows#的问题:2024年5月15日的win11更新后资源管理器没有地址栏了顶部的地址栏和文件搜索都消失了
  • ¥100 H5网页如何调用微信扫一扫功能?
  • ¥15 讲解电路图,付费求解
  • ¥15 有偿请教计算电磁学的问题涉及到空间中时域UTD和FDTD算法结合的
  • ¥15 three.js添加后处理以后模型锯齿化严重