本文是对 PHP 换行符的使用讲解
正文
今天在学习 PHP 的过程中发现 \n
并没有像书上说的正常换行。
举个例子,如下 PHP 代码:
echo "hello \n world";
在浏览器中是这样子的:
抱着疑问 Google 了一下,马上得到了答案:
首先,PHP 成功将换行符解析出来了,解析的结果就像下面这样:
hello
world
但是,在网页中,上面解析的结果被包到了 HTML
的 body
标签中,我们都知道,在 HTML
中的 空格、换行符和制表符,都会被视为空白字符。所以在浏览器中并没有正常的换行。
解决方法
方法一:使用 HTML
中的换行符
因为要在浏览器中展示,那我们使用 HTML
中的换行符不就行了吗?
将上面的 PHP 代码改成如下:
echo "hello <br /> world";
结果如下,成功换行:
方法二:查看 PHP 解析的源代码
我前面说了,他解析的结果是没有问题的,那我们查看它解析后的源代码不就行了。而且浏览器中查看网站源代码也非常方便。
额外说明
还有,就是单引号与双引号的问题。在 PHP 中仅双引号支持多种字符串转义,也就是说,如果上面你使用单引号,PHP 是不会解析成换行符的。
使用单引号的结果:
另外,如果你觉得写 <br />
麻烦,可以使用PHP内置函数 nl2br() 将 \n
转换成 <br />
。
echo "hello <br /> world";
echo nl2br("hello \n world"); // 效果与上面一样
参考资料
PHP中的换行详解
https://www.zhangshengrong.com/p/O3aAOzjX4E/
https://www.zhangshengrong.com/p/q0Xp3LkNKZ/