我認爲這可能是一個愚蠢的問題,但我很困惑我是否需要在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