require_once
在构造函数中,不工作我也试过include和require。 file_exists
功能正常。
这是我的代码:
<?php
class App {
protected $controller = 'home';
protected $method = 'index';
protected $params = [];
public function __construct() {
$url = $this->parseUrl();
//print_r($url);
if(file_exists(__DIR__.'/../controllers/'. $url[0] . '.php')) {
$this->controller = $url[0];
unset($url[0]);
}
require_once(__DIR__.'/../controllers/Home.php');
echo $this->controller;
}
}
答案 0 :(得分:-1)
我认为它有效。但是,您的代码将始终尝试包含__DIR__.'/../controllers/Home.php'
,而不是您在file_exists
来电中测试的文件。
我想你想做这样的事情:
if(file_exists(__DIR__.'/../controllers/'. $url[0] . '.php')) {
require_once(__DIR__.'/../controllers/'. $url[0] . '.php');
$this->controller = $url[0];
}