【PHP】记 file_get_contents 读取文件内容原格式显示在浏览器和wget下载文件内容

本文介绍了如何利用PHP的file_get_contents函数处理文件内容,使其能够在浏览器中按照原始格式展示,并能被用户下载。通过将内容转化为JSON存储,根据请求来源区分展示和下载,使用nl2br和str_replace进行换行处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、需求:

将file_get_contents读取到的文件内容通过一个链接访问可以按照文件内容格式展示到浏览器或下载到用户手机或电脑桌面

二、解决思路:

首先将读取到的内容放到数组中使用json_encoode转化成json字符串存储到数据库中,然后再用户下载或通过浏览器查看时通过preg_match正则匹配$_SERVER['HTTP_USER_AGENT']来判断用来源,此次用户下载是通过Wget下载如果$_SERVER['HTTP_USER_AGENT']包含Wget则视为下载其他视为浏览器。

浏览器展示:
  1. 获取用户要查看的内容唯一标识读取到内容需要注意的是换行和回车的识别其中有 \r、\n、\r\n
  2. 使用json_decode将json字符串转成数组,使用str_replace \r、\n、\r\n替换成HTML标签 <br />
  3. 替换成功后输出到浏览器。
下载到用户设备:

获取用户要查看的内容唯一标识读取到内容,使用json_decode将json字符串转成数组,通过下标直接输出即可,因为数据库中存储的就是原本的文件没有做任何处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值