如何在 php 魔术常量旁边添加反斜杠?

How to add backslash next to php magic constants?

我正在尝试检查文件是否存在。我为任务尝试了简单的 http URL 但 file_exists() 不支持(我的 php 版本是 5.5.12 并且 allow url fopen 已激活)。

所以我尝试了不同的方式及其工作方式,见下文

if(file_exists(__DIR__.'\email_template.php')) {
    echo  'Template is available.';
}

问题是我正在动态添加模板名称,我需要在 __DIR__$temp_name 之间使用反斜杠,但我无法正确连接。我在下面试过

$__DIR = __DIR__.'\';
$__DIR = __DIR__.'"\"';
$__DIR =  __DIR__."\";

但是没有人在工作,它的 return 语法错误。所以任何人都可以指导我如何解决我想要感谢的问题。谢谢

试试这个:

$__DIR = __DIR__.'\';

Backshlash 是 PHP(以及其他语言)中的特殊字符,用于表示应该以特殊方式解释其后的字符 - 并命名为 "escape char"。 你不希望这种情况发生,所以你应该逃避反斜杠......通过使用一个反斜杠。 ;)

您可以阅读更多内容here

另一种选择是使用预定义常量DIRECTORY_SEPARATOR

$__DIR = __DIR__ . DIRECTORY_SEPARATOR;

通过这种方式,您的代码在操作系统之间的可移植性更强,您可能关心也可能不关心。