Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/235.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否可以在不使用php.ini或.htaccess的情况下设置include_path,从而影响所有php目录?_Php_Include Path - Fatal编程技术网

是否可以在不使用php.ini或.htaccess的情况下设置include_path,从而影响所有php目录?

是否可以在不使用php.ini或.htaccess的情况下设置include_path,从而影响所有php目录?,php,include-path,Php,Include Path,在本地主机上,我修改php.ini以设置include\u路径。但是,我的php.ini中include_路径的行数增加了,看起来,嗯,很难看。我正在寻找一种设置include_路径的方法,比如,我可以在所有页面上复制粘贴单个include行,比如说,而不管它们在目录树中的什么位置,其中superfle包含所有include_路径指令 我已经试过了 <?php $include_path = $_SERVER["DOCUMENT_ROOT"] . "/more/directorie

在本地主机上,我修改php.ini以设置include\u路径。但是,我的php.ini中include_路径的行数增加了,看起来,嗯,很难看。我正在寻找一种设置include_路径的方法,比如,我可以在所有页面上复制粘贴单个include行,比如说
,而不管它们在目录树中的什么位置,其中superfle包含所有include_路径指令

我已经试过了

<?php
    $include_path = $_SERVER["DOCUMENT_ROOT"] . "/more/directories/as/needed/";
    ini_set("include_path", $include_path);
    include("initialize.php");
?>

并将其保存在根文件夹中,名为
superfle.php
。但是,如果我想通过
superfle.php
设置驻留在(比如root/sub)的文件的include路径,我需要执行
(带有“directory up”点),这与我设置include\u路径的目的背道而驰


有什么建议吗?谢谢

听起来您已经从php.ini中删除了所有自定义的
include\u path
指令


要允许所有脚本调用
,只需在php.ini
include_path
中添加一个条目,该条目将允许此操作,以及您的集合。

如果您在root/sub的文件具有include_path集合,include'superfile.php'将起作用,我不明白您的意思,伙计。对不起,我的问题措辞不当。现在编辑它(希望)更清楚。这个问题回答错了。不,根本不可能!您必须编辑
php.ini
为所有目录设置
include\u path
。另一种方法是在所有目录中放置一个
.htaccess
文件,如我的回答中所述:,但一个文件是不够的。呃……不,对不起。我的时态和措辞不好,所以我的问题,不可否认,含糊不清。我已经编辑了它,希望它现在更清晰。@skytreader
superfle.php
只能对包含它的文件产生影响,为了包含它,文件需要知道它相对于自身的位置,或者通过htaccess/php.ini include\u路径设置。