PHP 换行符的一些说明

来源:互联网 发布:wps for linux 字体 编辑:程序博客网 时间:2024/06/05 11:35

网上关于PHP换行符有着各种说法。比如 \n , \r\n , \r , <br />等。现在来尝试一下。
博主环境:Windows10,wamp 2.5,notepad++7.5.1
mac下的换行符:http://blog.csdn.net/u012359618/article/details/50410410

测试代码:

<?php echo 'hello ';echo '<br/>';       //说法1:在浏览器上面的换行符是 <BR />,  正确echo 'world ';echo '<br>';echo 'hello '; echo '\n';          //说法2:\n 是在控制台上面输出的换行//\n的作用是给源代码换行,输入后,查看html源代码,就看会到有换行,而浏览器认为它是没用的东西,用不用都一样显示。  单引号换成双引号 正确。echo 'world!'; echo '<br>';echo 'hello ';echo '\r\n';        //unix系统使用\n;windows系统下\r\n ;MAC 用 /r  echo 'world ';echo '<br>';//如果是输出到自己的文件里,就用"\n",windows下是"\r\n"   正确$file= 'test.txt';$content = "hello  \n word!";if($f  = file_put_contents($file, $content,FILE_APPEND)){  // 这个函数支持版本(PHP 5) echo "写入成功。<br />";}$content = "hello2  \r\n word!2";if($f  = file_put_contents($file, $content,FILE_APPEND)){  // 这个函数支持版本(PHP 5) echo "写入成功。<br />";}echo '<br>';echo "hello ";echo "\n";      //程序的中的换行符\n会直接输出,无法正确换行,解决方法是把单引号改为双引号:PHP的双引号和单引号的区别问题  正确echo 'world ';echo '<br>';?> 

执行结果:

网页:

网页执行结果
其中乱码部分是中文输出结果,成功写入文件。
注意:这个写入是会追加的。如果你原来已经存在这么一个文件,只会在文件尾部追加。
文件写入结果

终端:

终端输出

换行符 总结

<br/> <br>

这两个都是HTML标签,两个完全一样,因为br是自闭合标签。用br能成功在网页上实现换行。

<?php echo 'hello ';echo '<br/>';       //说法1:在浏览器上面的换行符是 <BR />,  正确echo 'world ';echo '<br>';

“\r\n”

//如果是输出到自己的文件里,就用"\n",windows下是"\r\n"   正确$file= 'test.txt';$content = "hello  \n word!";if($f  = file_put_contents($file, $content,FILE_APPEND)){  // 这个函数支持版本(PHP 5) echo "写入成功。<br />";}$content = "hello2  \r\n word!2";if($f  = file_put_contents($file, $content,FILE_APPEND)){  // 这个函数支持版本(PHP 5) echo "写入成功。<br />";}

Windows下输出到文件中的换行命令就是\r\n。
关于其他系统,可以自行测试。

“\n”

能在终端实现换行操作。在网页显示为空格,通过审查元素可见代码换行。
程序的中的换行符\n会直接输出,无法正确换行,解决方法是把单引号改为双引号:PHP的双引号和单引号的区别问题。
PHP允许我们在双引号串中直接包含字串变量,单引号串和双引号串在PHP中的处理是不相同的。双引号串中的内容可以被解释而且替换,而单引号串中的内容总被认为是普通字符。

<?phpecho "hello ";echo "\n";      echo 'world ';echo '<br>';?> 

终端界面:
终端界面

网页界面:
网页

注意:

换行时插入换行符要注意单双引号


追加 补充内容

PHP_EOL换行符

<?phpecho "hello ";echo PHP_EOL;       //据说是多平台都能用的换行符,可以在不同平台尝试下。echo 'world ';echo '<br>';?> 

执行结果同“\n”完全一致。
终端界面:
终端界面

网页界面:
网页

感觉应该还会有后续测试……

原创粉丝点击