iis 上的魔术常量分隔符 php
Magic constants separator php on iis
我 运行 PHP 在 IIS 上,我在使用魔法常量时遇到问题
我希望使用一个框架(YII),它有很多以下内容:
require(__DIR__ . '\..\vendor\autoload.php');
问题是这个 returns:
G:\PleskVhosts\***.com\api\web/../vendor/autoload.php
这会导致明显的问题
所以我想知道是否有一种方法可以配置 PHP 以便魔术常量始终 return 和 /
(据我了解 IIS/Windows 接受两者-斜杠和正斜杠)
我认为在文件路径中使用 / 或 \ 并不重要,Windows 通常两者都适用。虽然它不适用于单个反斜杠,但如果有意义的话,您需要在代码中使用双反斜杠来转义反斜杠。尝试 运行...
var_dump(file_exists(__DIR__ . '/../vendor/autoload.php'));
如果 returns 正确,那么应该没有问题。否则仔细检查文件路径是否正确。您也可以先使用 realpath
将 /../
翻译成完整路径。
我 运行 PHP 在 IIS 上,我在使用魔法常量时遇到问题
我希望使用一个框架(YII),它有很多以下内容:
require(__DIR__ . '\..\vendor\autoload.php');
问题是这个 returns:
G:\PleskVhosts\***.com\api\web/../vendor/autoload.php
这会导致明显的问题
所以我想知道是否有一种方法可以配置 PHP 以便魔术常量始终 return 和 /
(据我了解 IIS/Windows 接受两者-斜杠和正斜杠)
我认为在文件路径中使用 / 或 \ 并不重要,Windows 通常两者都适用。虽然它不适用于单个反斜杠,但如果有意义的话,您需要在代码中使用双反斜杠来转义反斜杠。尝试 运行...
var_dump(file_exists(__DIR__ . '/../vendor/autoload.php'));
如果 returns 正确,那么应该没有问题。否则仔细检查文件路径是否正确。您也可以先使用 realpath
将 /../
翻译成完整路径。