簡體   English   中英

require_once路徑/到/file.php與file.php

[英]require_once path/to/file.php vs file.php

包含包含另一個文件的文件時出現以下問題:

// path: /ajax/request.php
require_once("../classes/obj/Car.php");


// path: /classes/obj/Car.php;
require_once("Vehicle.php"); // superclass,  this works
require_once("../exception/NoWheelException");  // this doesn't work when Car.php is require_once()'d from /ajax/request.php

問題似乎是,如果文件A需要文件B ,文件B需要文件CD ,則在使用時,僅當CD在文件名前使用"../""./"情況下才有效require_once()

有任何解決方法或任何想法可以解決此問題?

使用__FILE__以便從以下位置知道它的包含位置:

require_once(dirname(__FILE__) . '/../exception/NoWheelException');

哪里:

__FILE__ == "/classes/obj/Car.php";
dirname(__FILE__) == "/classes/obj";

另外,我不知道一個注釋-如果您的PHP版本足夠新, __DIR__似乎等效於dirname(__FILE__)

有關__FILE__和其他魔術常數的更多信息,請__FILE__此處

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM