在PHP中,我尝试创建一个换行符:
echo $clientid;
echo ' ';
echo $lastname;
echo ' ';
echo '\r\n';
然后,我在记事本中打开创建的文件,它会按字面意思写下换行符:
1无名氏\r\n 1无名氏\r\n 1无名氏\r\n
我已经尝试了\r\n
的许多变体,但都不起作用。为什么换行符不会变成换行符?
发布于 2010-11-21 22:48:22
只有double quoted strings将转义序列\r
和\n
分别解释为'0x0D‘和'0x0A’,所以您需要:
"\r\n"
另一方面,Single quoted strings只知道转义序列\\
和\'
。
因此,除非您将单引号字符串与其他地方生成的换行符连接起来(例如,使用双引号字符串"\r\n"
或使用chr
function chr(0x0D).chr(0x0A)
),否则在单引号字符串中使用换行符的唯一另一种方法就是使用编辑器直接键入:
$s = 'some text before the line break
some text after';
如果需要某些特定的字符序列(例如\r\n
),请确保检查编辑器的换行符设置。
发布于 2010-11-21 22:50:37
使用预定义的PHP_EOL
常量:
echo $clientid, ' ', $lastname, PHP_EOL;
常量值将根据执行PHP的操作系统的行尾进行设置。在Linux上,它是"\n"
;在Windows上,它是"\r\n"
。
发布于 2013-12-24 02:50:25
PHP中的"echo“命令将输出作为原始html发送到浏览器,因此即使使用双引号,浏览器也不会将其解析为两行,因为换行符在HTML中没有任何意义。这就是为什么您需要使用以下两种方法之一:
echo [output text]."<br>";
当使用"echo“时,或者使用fwrite...
fwrite([output text]."\n");
这将输出HTML换行符,而不是"\n“。
https://stackoverflow.com/questions/4238433
复制相似问题