<?php
set_time_limit(0);
$myfile = gzopen($constpath . '.gz', 'w');
if (!$myfile){
throw new \UnexpectedValueException('could not open datafeed.gz file');
}
$mystream = gzopen($constURL, 'r');
if (!$mystream){
throw new \UnexpectedValueException('could not open gzip remote file');
}
echo '1<br>';
while (!gzeof($mystream)){
$data = gzread($mystream, 8096);
gzwrite($myfile, $data);
}
echo '4<br>';
gzclose($mystream);
gzclose($myfile);
echo '5<br>';
echo 'down done';
//begin ungzip
$fp = fopen($constpath . '.csv', 'w');
$gz = gzopen($constpath . '.gz', 'r');
if (!$gz){
throw new \UnexpectedValueException(
'could not open gzip file'
);
}
if (!$fp){
gzclose($gz);
throw new \UnexpectedValueException(
'could not open destination file'
);
}
while (!gzeof($gz)) {
fwrite($fp, gzread($gz, 8096));
}
gzclose($gz);
fclose($fp);
echo 'ungzip done';
?>
您好, 上面的人是我的代码,它间歇性地允许我下载gz文件然后解压缩它,但它似乎没有在任何种类的模式或其他任何事情做这个,有什么我需要知道如何使用这些像这样的函数可能是对URL长度的限制(它目前大约是2.5K字符),但遗憾的是我无法改变。如果存在错误,人们会建议如何调试?或者我能做什么?
谢谢!
编辑:我注意到的是,创建一个25kB文件需要一个绝对的年龄,之前它是0kB,然后停在25kB当我在nano中打开文件时我得到了 ^ _ ^ H ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ C ^ @ ^ @ ^ @ ^ C ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ 但是当我在窗户中解压缩并打开时,那里什么都没有?