在iis上的魔术常数分隔符php

时间:2015-03-06 09:40:59

标签: php iis yii

我在IIS上运行PHP,我遇到了魔术常量问题

我希望使用一个框架(YII),它有很多以下内容:

require(__DIR__ . '\..\vendor\autoload.php');

问题是这会返回:

G:\PleskVhosts\***.com\api\web/../vendor/autoload.php

导致明显问题

所以我想知道是否有办法配置PHP,以便魔术常量始终返回/(据我所知,IIS / Windows接受反斜杠和正斜杠)

1 个答案:

答案 0 :(得分:1)

如果您在文件路径中使用/或\,我认为不重要,Windows通常适用于两者。但它不适用于单个反斜杠,你需要在代码中加倍反斜杠以逃避反斜杠,如果这有意义的话。试试跑......

var_dump(file_exists(__DIR__ . '/../vendor/autoload.php'));

如果返回true则应该没有问题。否则请仔细检查文件路径是否正确。您还可以使用realpath/../转换为完整路径。