教程集 www.jiaochengji.com
教程集 >  脚本编程  >  php  >  正文 PHP fwrite换行写入时换行符不起作用的原因

PHP fwrite换行写入时换行符不起作用的原因

发布时间:2017-12-11   编辑:jiaochengji.com
教程集为您提供PHP fwrite换行写入时换行符不起作用的原因等资源,欢迎您收藏本站,我们将为您提供最新的PHP fwrite换行写入时换行符不起作用的原因资源
在做一个百度404错误自动提交文件时发现里面的换行不生效了,那么在PHP fwrite换行写入时换行符不起作用时我们要如何来自呢,具体的来看看吧。

php的换行符我们都知道:\n ,回车符:\r,在需要换行时,通常是用“\r\n”这个组合。但是为什么我们在使用fwrite写入文件时\n换行符不起作用呢。我们先看下面这个例子:

<?php
$filename = 'file.txt';
$word = '你好!\r\n欢迎来到www.jiaochengji.com';
$fh = fopen($filename, "a"); //w从开头写入 a追加写入
echo fwrite($fh, $word);
fclose($fh);
?>
$word的字符串内加上了回车换行符“\r\n”,但是输出结果并不是预期,这个回车换行符“\r\n”并没有被解析为换行符,而是直接被当作一个字符输出来了。

  为什么会出现这样的情况呢?经研究,原来是单双引号惹的祸!我们把$word定义字符串的单引号“'”换为双引号“"”就可以了。正确的写法如下:

$filename = 'file.txt';
$word = "你好!\r\n欢迎来到www.jiaochengji.com";
$fh = fopen($filename, "a"); //w从开头写入 a追加写入
echo fwrite($fh, $word);
fclose($fh);

题外话,上述例子里echo fwrite()显示的一个数字,这个数字表示字符串的长度。

知识扩充

用双引号(")定义字符串,PHP 懂得更多特殊字符的转义序列:

转移序列说明

\n换行

\r回车

\t水平制表符

\[/td>反斜线

\$美元符号

\"双引号

\[0-7]{1,3}此正则表达式序列匹配一个用八进制符号表示的字符

\x[0-9A-Fa-f]{1,2}此正则表达式序列匹配一个用十六进制符号表示的字符

您可能感兴趣的文章:
PHP fwrite换行写入时换行符不起作用的原因
PHP实现html源码中回车换行输出
php fwrite写入txt文件 \r\n不能换行的解决方法
php文件写操作
学习php的fwrite函数
学习php写入文件内容的方法
PHP中fwrite与file_put_contents的区别
php生成excel与控制Excel单元格中的换行符
php修改配置文件示例代码
PHP file_put_contents 将字符串写入或追加到文件

[关闭]
~ ~