仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 592|回复: 8
打印 上一主题 下一主题

[学习教程] PHP网页设计PHP下载远程文件的3种办法和功能思索...

[复制链接]
简单生活 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:13:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
那么接下来,这就算学会啦?NO,NO,NO,还早呢,你至尽还没碰过OOP之类的吧?模板呢?明天在做导出Excel的时分,老是要测试导出的Excel文件,频仍的下载和翻开,很贫苦就想着写段代码一挥而就服务端导出Excel==>下载Excel文件到当地==>并翻开的操纵。这里摘出PHP下载远端文件的计划,以备忘。个中第3种办法思索到文件过年夜时的功能成绩。3种计划:-rw-rw-r--1liuyuanliuyuan470Feb2018:12test1_fopen.php-rw-rw-r--1liuyuanliuyuan541Feb2018:06test2_curl.php-rw-rw-r--1liuyuanliuyuan547Feb2018:12test3_curl_better.php计划1,合用于小文件间接利用fopen()/file_get_contents()猎取文件流并用file_put_contents()写进<?php//anexamplexlsfileformbaiduwenku$url=http://bs.baidu.com/wenku4/%2Fe43e6732eba84a316af36c5c67a7c6d6?sign=MBOT:y1jXjmMD4FchJHFHIGN4z:lfZAx1Nrf44aCyD6tJqJ2FhosLY%3D&time=1392893977&response-content-disposition=attachment;%20filename=%22php%BA%AF%CA%FD.xls%22&response-content-type=application%2foctet-stream;$fp_input=fopen($url,r);file_put_contents(./test.xls,$fp_input);exec("libreoffice./test.xls",$out,$status);?>  计划2:经由过程Curl猎取内容<?php//anexamplexlsfileformbaiduwenku$url=http://bs.baidu.com/wenku4/%2Fe43e6732eba84a316af36c5c67a7c6d6?sign=MBOT:y1jXjmMD4FchJHFHIGN4z:lfZAx1Nrf44aCyD6tJqJ2FhosLY%3D&time=1392893977&response-content-disposition=attachment;%20filename=%22php%BA%AF%CA%FD.xls%22&response-content-type=application%2foctet-stream;$ch=curl_init($url);curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);file_put_contents(./test.xls,curl_exec($ch));curl_close($ch);exec("libreoffice./test.xls",$out,$status);?>  第1,2种计划存在一个成绩,就是在写进当地磁盘之前,文件会被读进内存中,那末当文件很年夜的时分,大概会超越内存而溃散即便你的内存设置的充足的年夜,那这也是不别要的开支办理办法是:间接给CURL一个可写的文件流来让它本人来办理这个成绩(经由过程CURLOPT_FILE选项),如许就要先创立一个文件指针给它。<?php//anexamplexlsfileformbaiduwenku$url=http://bs.baidu.com/wenku4/%2Fe43e6732eba84a316af36c5c67a7c6d6?sign=MBOT:y1jXjmMD4FchJHFHIGN4z:lfZAx1Nrf44aCyD6tJqJ2FhosLY%3D&time=1392893977&response-content-disposition=attachment;%20filename=%22php%BA%AF%CA%FD.xls%22&response-content-type=application%2foctet-stream;$fp_output=fopen(./test.xls,w);$ch=curl_init($url);curl_setopt($ch,CURLOPT_FILE,$fp_output);curl_exec($ch);curl_close($ch);exec("libreoffice./test.xls",$out,$status);?>  终于学会把表单的数据插入数据库,然后显示出来了,应该说一个程序的雏形已经诞生了。
分手快乐 该用户已被删除
沙发
发表于 2015-1-19 05:06:13 | 只看该作者
这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己
不帅 该用户已被删除
板凳
发表于 2015-1-27 19:20:54 | 只看该作者
我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。
莫相离 该用户已被删除
地板
发表于 2015-2-5 14:06:00 | 只看该作者
装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。
若天明 该用户已被删除
5#
发表于 2015-2-12 03:13:28 | 只看该作者
个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。
精灵巫婆 该用户已被删除
6#
发表于 2015-3-2 22:08:00 | 只看该作者
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
小妖女 该用户已被删除
7#
发表于 2015-3-11 06:49:40 | 只看该作者
实践是检验自己会不会的真理。
金色的骷髅 该用户已被删除
8#
发表于 2015-3-17 23:07:55 | 只看该作者
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
山那边是海 该用户已被删除
9#
发表于 2015-3-25 06:10:15 | 只看该作者
作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-20 18:29

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表