.htaccess Require():无法打开所需的(include_path ='.;C:\xampp\php\梨')

zpjtge22  于 2023-02-05  发布在  PHP
关注(0)|答案(2)|浏览(138)

我用mvc框架创建了一个网站,但是我不能在其他文件夹中包含php文件。例如,我有模型,视图,控制器和核心文件夹,如果我做下面的require 'Core/User.php';在视图文件夹中的视图文件中,然后我收到以下错误:

Warning: require(Core/User.php): failed to open stream: No such file or directory 
in C:\xampp\htdocs\k2\View\customer-management.php on line 2

Fatal error: require(): Failed opening required 'Core/User.php' 
(include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\k2\View\customer-management.php 
on line 2

我试过使用../Core/User.php,但是这个应用程序太乱了,我需要一个更干净的方法来完成这个任务,也许可以使用php.ini或.htaccess来允许我从另一个文件夹中只使用include('Core/User.php');

wr98u20j

wr98u20j1#

我有两种方法来实现这一点,两种方法都是将"C:\xampp\htdocs\k2"添加到包含路径中
1.使用.htaccess
将此行添加到Web根目录下的.htaccess文件中。您可以根据需要添加其他目录

php_value include_path '.;C:\xampp\php\PEAR;C:\xampp\htdocs\k2'

确保Apache配置为允许htaccess工作:Number 4
1.如果您有一些总是包含的"config"文件,则可以向其中添加此行来设置包含路径
set_include_path(get_include_path() . PATH_SEPARATOR . 'C:\xampp\htdocs\k2');
这使您的代码比使用相对或绝对路径更具可移植性,因为当文件结构更改时,只有一个位置可以进行更改。

evrscar2

evrscar22#

PHP新手,如果这是一个无效的答案,对不起;
为我生成错误的代码:

require_once '..app/controllers/' . $this->currentController . '.php';

**问题是我在..**之后没有/,更正以下代码解决了该错误:

require_once '../app/controllers/' . $this->currentController . '.php';

相关问题