假设我们有 index.php ,它存储在 / home / user / public / www index.php 中调用来自文件 inc / app / Foo.class.php 的class Foo-> bar()

我希望 Foo 类中的bar函数能够在此实例中保存路径 / home / user / public / www —我不想使用全局变量,传递变量等等。

有帮助吗?

解决方案

这不会更容易让你获得正在运行的脚本的目录吗?

$dir=dirname(

这不会更容易让你获得正在运行的脚本的目录吗?

<*>SERVER["SCRIPT_FILENAME"])

其他提示

您可以使用 debug_backtrace 来查看调用路径并获取调用此函数的文件。

一个简短的例子:

class Foo {
  function bar() {    
   $trace = debug_backtrace();
   echo "calling file was ".$trace[0]['file']."\n";
  }
}

getcwd()获取当前工作目录

可以通过发出 chdir(),由第三方模块,包括甚至是您自己的代码,由于各种原因进行更改。

Devon建议的

debug_backtrace()就是您正在寻找的答案。

找到它。 GETCWD()。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top