Xdebug 奇怪的__DIR__常量
2022-08-30 16:12:16
我正在编写一个加载YAML文件的PHP CLI应用程序。尝试在 Xdebug 会话中执行此操作时:
if (file_exists(__DIR__ . '/../../foo/bar')
{
/* ... */
}
__DIR__
allways is will allways to from .xdebug:
false
file_exists()
有没有解决方法?
我正在编写一个加载YAML文件的PHP CLI应用程序。尝试在 Xdebug 会话中执行此操作时:
if (file_exists(__DIR__ . '/../../foo/bar')
{
/* ... */
}
__DIR__
allways is will allways to from .xdebug:
false
file_exists()
有没有解决方法?
设置并使用 。它将像这样工作。$dir = __DIR__;
if (file_exists($dir . '/../../foo/bar')
问题是调试器会显示一个错误的值,因为解析器已经在脚本中替换了 DIR。
完整的解释可以在这里找到:
我如何获得PHP魔术常数__FILE__Eclipse和PDT一起工作
您获得的输出不正确。FILE 是一个特殊常量,在解析器时进行计算。