Когда я запускаю этот кусок кода:
echo addcslashes('testing\n', "\n");
Это выводит это:
"testing\n"
Объяснение параметров -> Charlist
говорит:
Если
charlist
содержит символы \ n, \ r и т. д., они преобразуются вC-like
стиль
но это не кажется правильным. Это будет означать, что "\n"
превращается в "\n"
в стиле C, который не имеет никакого смысла.
Можно ли утверждать, что страница php.net неверна? Было бы правильно, если бы было сказано, что эти типы персонажей просто остаются прежними? Я изучаю программирование на PHP и хочу убедиться, что информация, которая у меня есть, верна.
Это означает, что \n
(внутри двойных кавычек) будет экранирован и станет \\n
:
var_dump("testing\n"); // 8 bytes
var_dump(addcslashes("testing\n", "\n")); // 9 bytes
Будут ли выходы:
string(8) "testing
"string(9) "testing\n"
Других решений пока нет …