标题 | PHP实现html源码中回车换行输出 |
内容 | 在源码中输入换行但是不显示像br 之类的字符我们需要通过php地转义字符来实现了,下文就一起来看看吧。 知识扩充 转移序列说明 n换行 r回车 t水平制表符 [/td>反斜线 $美元符号 "双引号 [0-7]{1,3}此正则表达式序列匹配一个用八进制符号表示的字符 x[0-9A-Fa-f]{1,2}此正则表达式序列匹配一个用十六进制符号表示的字符 用双引号(")定义字符串,PHP 懂得更多特殊字符的转义序列: PHP默认页面编码为HTML,要使输出的内容换行,必须使用HTML的换行标签”<br>”或”<br />” ,当使用PHP做http api时,处理br标签稍显麻烦,此时可以指定PHP页面编码,使”\n”成功解析为换行. 代码如下复制代码 <?php header("Content-type:text/txt; charset=gb2312"); for ($i=0; $i < 100; $i++) { echo "string"; echo "\n"; ?> 用浏览器访问,会直接显示100行”string”. 也可以将页面编码声明为 代码如下复制代码 header("Content-Type: plain/text; charset=gb2312"); 此时用浏览器访问,会自动下载为文档,用代码下载没有区别. txt文件使用fwrite换行写入时换行符不起作用 php的换行符我们都知道:\n ,回车符:\r,在需要换行时,通常是用“\r\n”这个组合。但是为什么我们在使用fwrite写入文件时\n换行符不起作用呢。我们先看下面这个例子: 代码如下 <?php $filename = 'file.txt'; $word = '你好!\r\n欢迎来到www.111cn.net'; $fh = fopen($filename, "a"); //w从开头写入 a追加写入 echo fwrite($fh, $word); fclose($fh); ?> $word的字符串内加上了回车换行符“\r\n”,但是输出结果并不是预期,这个回车换行符“\r\n”并没有被解析为换行符,而是直接被当作一个字符输出来了。 为什么会出现这样的情况呢?经研究,原来是单双引号惹的祸!我们把$word定义字符串的单引号“'”换为双引号“"”就可以了。正确的写法如下: 代码如下 <?php $filename = 'file.txt'; $word = "你好!\r\n欢迎来到www.111cn.net"; $fh = fopen($filename, "a"); //w从开头写入 a追加写入 echo fwrite($fh, $word); fclose($fh); ?> 题外话,上述例子里echo fwrite()显示的一个数字,这个数字表示字符串的长度 |
随便看 |
|
在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。