Penso che questa possa essere una domanda stupida, ma sono abbastanza confuso se ho bisogno di scappare backslash in PHP.In PHP devo evitare i backslash?
echo 'Application\Models\User'; prints Application\Models\User
echo 'Application\\Models\\User'; same output
echo 'Application\Model\'User'; gives Application\Model'User
Quindi è un carattere di escape, non dovrei bisogno di sfuggire (\
) se voglio fare riferimento a Application\Models\User
?
Ma la fuga di backslash sembra essere facoltativa, giusto? Quindi posso scrivere sia "Hello \ world" che "Hello world". La tua risposta implica che, naturalmente, '\ w' non è una sequenza di escape valida e quindi viene pubblicata come scritta. – caw
@caw: No. Funziona qui, ma è _non_ perché l'escape della barra rovesciata è "opzionale", ma poiché la combinazione '\ w' non riesce a corrispondere a nulla e quindi ricade nella sua forma letterale. Ma prova a stampare un singolo '\\', ad esempio, senza fuggire. O qualsiasi cosa che finisce con una singola barra rovesciata. Avrai un errore di analisi. –
@Sz Questo è solo perché la singola barra rovesciata verrà quindi interpretata come il carattere di escape per la seguente citazione singola. Hai ragione, ovviamente. L'escape del backslash è solitamente facoltativo per il motivo che hai dichiarato, vale a dire che sarà una sequenza di escape non valida nella maggior parte degli altri casi e quindi verrà stampato come una barra rovesciata letterale. – caw