PHP 中的反斜杠中断字符串
Backslashes breaking string in PHP
我有一个问题。我正在尝试用这样的 ASCII 文本编写一个字符串:'/\'。但是每当我这样做时,反斜杠通过取消定义它的字符串的引号来搞砸代码,从而搞砸了。无论如何取消反斜杠,这样它就不会取消报价?谢谢大家!
\
是特殊字符,表示:'The next character has special meaning'。
所以如果你想显示 \
你应该写... \
在输出中得到一个 \
HEREDOC 是编写此类内容的绝佳解决方案。在 heredoc 块中,您无需担心转义任何内容,它只是文本。
例如:
echo <<<TEXT
/|\/|\/|\/|\/|\/|\/|\/|\/|\/|\
TEXT;
有一个问题。 PHP 如果你没有在行首对齐回显,或者如果 TEXT;未在行首对齐。
Heredoc也可以赋值给一个变量,像这样:
$var = <<<SOME_MORE_TEXT
/|\/|\/|\/|\/|\/|\/|\/|\/|\/|\
SOME_MORE_TEXT;
最后,HEREDOC 保留了制表符和空格。这在做 ASCII 艺术时也可能派上用场。
参考:http://php.net/manual/en/language.types.string.php了解更多信息。
展示您尝试过的内容会非常有帮助,但这将产生您要求的准确输出(如 SO 所示)
echo '\'/\' . "'\n" ;
'/\'
它还应该让您了解反斜杠转义在不同类型的字符串中的工作原理。
使用单引号时只需要对最后一个进行转义即可。
$var = 'backslash\backslash\backslash\';
// output is:
// backslash\backslash\backslash\
我有一个问题。我正在尝试用这样的 ASCII 文本编写一个字符串:'/\'。但是每当我这样做时,反斜杠通过取消定义它的字符串的引号来搞砸代码,从而搞砸了。无论如何取消反斜杠,这样它就不会取消报价?谢谢大家!
\
是特殊字符,表示:'The next character has special meaning'。
所以如果你想显示 \
你应该写... \
在输出中得到一个 \
HEREDOC 是编写此类内容的绝佳解决方案。在 heredoc 块中,您无需担心转义任何内容,它只是文本。
例如:
echo <<<TEXT
/|\/|\/|\/|\/|\/|\/|\/|\/|\/|\
TEXT;
有一个问题。 PHP 如果你没有在行首对齐回显,或者如果 TEXT;未在行首对齐。
Heredoc也可以赋值给一个变量,像这样:
$var = <<<SOME_MORE_TEXT
/|\/|\/|\/|\/|\/|\/|\/|\/|\/|\
SOME_MORE_TEXT;
最后,HEREDOC 保留了制表符和空格。这在做 ASCII 艺术时也可能派上用场。
参考:http://php.net/manual/en/language.types.string.php了解更多信息。
展示您尝试过的内容会非常有帮助,但这将产生您要求的准确输出(如 SO 所示)
echo '\'/\' . "'\n" ;
'/\'
它还应该让您了解反斜杠转义在不同类型的字符串中的工作原理。
使用单引号时只需要对最后一个进行转义即可。
$var = 'backslash\backslash\backslash\';
// output is:
// backslash\backslash\backslash\