日期:2014-05-17  浏览次数:20480 次

请教php下载文件问题
目的:从远程链接处下载文件
问题:远程链接提供一个csv格式文件的下载,如:http://adscendmedia.com/campaigncsv.php,访问链接后浏览器提示下载,请问如何通过php代码直接下载此文件到服务器上?(这是后台运行的一个代码片段,所以无法来选择“另存为”方式下载的),各种常规下载方式都试过不行,有什么办法吗?

------解决方案--------------------
有两个可能的原因:一是有些网站不支持file_get_contents,fopen等函数的抓取。二是http://adscendmedia.com/campaigncsv.php转向了一个新的网址,这个网址才是要下载的文件。
对于第一个原因,可以尝试CURL函数,curl系列函数能够更好的模拟浏览器。
对于第二个原因,得到新的网址有两个方法。一个方法是在浏览器的下载功能里面,在文件下载过程中可以看到。而是用php的socket系列函数可以输出返回的header信息。
------解决方案--------------------
补充:也可以试试用socket系列函数抓取。
------解决方案--------------------
我看了一下,网址转向了https://adscendmedia.com/campaigncsv.php
注意是https !