Php 相对包含文件
我有一份档案 workers/activity/bulk_action.php,其中包含一个文件Php 相对包含文件,php,Php,我有一份档案 workers/activity/bulk_action.php,其中包含一个文件 include('../../classes/aclass.php'); 在aclass.php中,它执行以下操作: include ('../tcpdf/config/lang/eng.php'); 第二个文件中的include似乎正在使用第一个文件的工作目录,而不是相对于其自身,从而导致了一个错误。这是如何工作的?您可以调整第二个包含的: include (__DIR__.'/../tcpd
include('../../classes/aclass.php');
在aclass.php中,它执行以下操作:
include ('../tcpdf/config/lang/eng.php');
第二个文件中的include似乎正在使用第一个文件的工作目录,而不是相对于其自身,从而导致了一个错误。这是如何工作的?您可以调整第二个
包含的:
include (__DIR__.'/../tcpdf/config/lang/eng.php');
魔法常量\uuuu DIR\uuuuu
引用当前的.php文件,通过在该文件后面附加相对路径,将指向正确的位置
但它只在PHP5.3之后才起作用,如果需要与旧设置兼容,则必须使用dirname(\uuuuu FILE\uuuuu)
构造。您可以使用以下内容调整第二个include
:
include (__DIR__.'/../tcpdf/config/lang/eng.php');
魔法常量\uuuu DIR\uuuuu
引用当前的.php文件,通过在该文件后面附加相对路径,将指向正确的位置
但是它只在PHP5.3之后才起作用,如果需要与旧的设置兼容,则必须使用dirname(_文件)
构造
根据给定的文件路径包含文件,如果未给定,则根据指定的包含路径包含文件。如果在include_路径中找不到该文件,include()最终将签入调用脚本自己的目录和当前工作目录,然后失败
您可以使用dirname(\uuuu FILE\uuuu)
获取当前执行脚本所在目录的路径:
include(dirname(dirname(__FILE__)) . '/tcpdf/config/lang/eng.php');
(从PHP5.3开始,您可以使用\uuuuu DIR\uuuu
)
或者,在指向根目录的第一个文件中定义一个常量,并在include中使用它
根据给定的文件路径包含文件,如果未给定,则根据指定的包含路径包含文件。如果在include_路径中找不到该文件,include()最终将签入调用脚本自己的目录和当前工作目录,然后失败
您可以使用dirname(\uuuu FILE\uuuu)
获取当前执行脚本所在目录的路径:
include(dirname(dirname(__FILE__)) . '/tcpdf/config/lang/eng.php');
(从PHP5.3开始,您可以使用\uuuuu DIR\uuuu
)
或者,在指向根目录的第一个文件中定义一个常量,并在include中使用它。最好为include\u路径设置一个适当的值,然后使用相对于此目录的路径
set_include_path(
get_include_path() .
PATH_SEPARATOR .
realpath(__DIR__ . '/your/lib')
);
include 'tcpdf/config/lang/eng.php';
include 'classes/aclass.php';
我还建议您查看一下自动加载。这将使文件include过时。您最好为include\u路径设置一个适当的值,然后使用相对于此目录的路径
set_include_path(
get_include_path() .
PATH_SEPARATOR .
realpath(__DIR__ . '/your/lib')
);
include 'tcpdf/config/lang/eng.php';
include 'classes/aclass.php';
我还建议您查看一下自动加载。这将使文件包含过时