加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

为什么PHP fwrite换行写入时换行符不起作用

发布时间:2023-09-28 10:49:25 所属栏目:PHP教程 来源:
导读:php的换行符我们都知道:/n ,回车符:/r,在需要换行时,通常是用“/r/n”这个组合。但是为什么我们在使用fwrite写入文件时/n换行符不起作用呢。我们先看下面这个例子:

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

<?php 
$filename = 'file.txt'; 
$word = '你好!/r/n欢迎来到www.Cuoxin.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.Cuoxin.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}此正则表达式序列匹配一个用十六进制符号表示的字符

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章