>  기사  >  백엔드 개발  >  如何在 PHP Shell 脚本中生成一个文件并上传到服务器?

如何在 PHP Shell 脚本中生成一个文件并上传到服务器?

WBOY
WBOY원래의
2016-06-06 20:15:571187검색

我需要通过 PHP 脚本生成一个文件(如 excel )并上传到服务器,供用户下载。

一般文件不大的情况,用户在页面上点击下载,再去数据库取数据,设置 heder 头以流的形式输出到浏览器,并且制定文件类型的方式下载,这当然是可以的,但是问题是现在生成一个文件可能非常大,并且很耗时,所以要做成异步的方式,用户点击下载就入一个任务到队列,在 Shell 脚本中以计划任务的形式读取队列任务,然后生成一个文件并且上传到服务器呢,这种情况如何解决?

我尝试在 PHP 中创建一个临时文件,把数据写到临时文件,但是发现这个临时文件是 resource 类型,无法通过上次函数上传,函数参数要求必须是目录名称,而传进去的是资源型

回复内容:

我需要通过 PHP 脚本生成一个文件(如 excel )并上传到服务器,供用户下载。

一般文件不大的情况,用户在页面上点击下载,再去数据库取数据,设置 heder 头以流的形式输出到浏览器,并且制定文件类型的方式下载,这当然是可以的,但是问题是现在生成一个文件可能非常大,并且很耗时,所以要做成异步的方式,用户点击下载就入一个任务到队列,在 Shell 脚本中以计划任务的形式读取队列任务,然后生成一个文件并且上传到服务器呢,这种情况如何解决?

我尝试在 PHP 中创建一个临时文件,把数据写到临时文件,但是发现这个临时文件是 resource 类型,无法通过上次函数上传,函数参数要求必须是目录名称,而传进去的是资源型

干嘛非得生成临时文件,直接生成文件,然后上传,上传成功后删除文件

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.