强制包含来自同一目录的文件,而不是include_path

Gur*_*ngh 6 php include

我正在尝试使用FPDF_Code39类来打印扩展FPDF类的条形码.我收到此错误:

Warning (2): include(helveticab.php) [function.include]: failed to open stream: No such file or directory [D:\xampp\php\PEAR\fpdf.php, line 541]
Run Code Online (Sandbox Code Playgroud)

抓住了D:\xampp\php\PEAR\fpdf.php.它包括fpdf.php从而PEAR我希望它包含与FPDF_Code39类相同的目录中的fpdf,因为我有最新的FPDF.

我通过临时重命名确认了这个问题PEAR/fpdf.php,一切都像魅力一样.

如何强制它从同一目录而不是include_path中获取FPDF?这是我的要求......

require('./fpdf.php'); \\I read at many places that this will do it.
require(dirname(__FILE__).'/fpdf.php');
require('fpdf.php')
Run Code Online (Sandbox Code Playgroud)

非常感谢您的帮助......

Fab*_*ler 13

第二个是最稳定的,因为它不依赖于include路径(如第三个),也不依赖于当前工作目录(如第一个).

从PHP 5.3开始你也可以写

require __DIR__ . '/fpdf.php';
Run Code Online (Sandbox Code Playgroud)

代替

require dirname(__FILE__).'/fpdf.php';
Run Code Online (Sandbox Code Playgroud)