我认为这可能是一个愚蠢的问题,但我很困惑我是否需要在PHP中转义反斜杠。在PHP中我需要逃避反斜杠?
echo 'Application\Models\User'; prints Application\Models\User
echo 'Application\\Models\\User'; same output
echo 'Application\Model\'User'; gives Application\Model'User
所以这是一个转义字符,我不应该需要逃避它(\
)如果我想指的Application\Models\User
?
但逃避反斜杠本身似乎是可选的,对不对?所以我可以写'Hello \ world''和'Hello \\ world''。当然,您的答案意味着'\ w'不是有效的转义序列,因此输出为书写。 – caw 2016-12-03 03:54:39
@caw:不,它不会在这里工作,但是这是因为_不_逃避反斜杠是“可选”,而是因为在'\ w'组合无法匹配任何东西,而返回到它的字面形式。但是,尝试打印一个'\\',例如,不要逃避。或者任何以单个反斜杠结尾的内容。你会得到一个解析错误。 – 2018-01-24 19:24:29
@Sz这只是因为单个反斜杠将被解释为以下单引号的转义字符。当然你是对的。出于您陈述的原因,反斜杠的转义通常是可选的,即在大多数其他情况下它将是无效的转义序列,因此将其打印为文字反斜杠。 – caw 2018-01-24 21:25:28