iOS-Schnittstelle, mehrere Bilder werden stapelweise heruntergeladen. iOS übergibt mir die ID jedes Bildes, aber mein Download kann nur einmal ausgeführt werden (die iOS-Schnittstelle wird später verwendet, und dies ist derzeit der Fall). wird auf der Webseite debuggt)?
Der Code lautet wie folgt:
public function index(){
<code>$download =array( 0=>3, 1=>5, ); foreach($download as $dow_v){ //查找数据库中的图片信息 $dow_arr = D('Upload') -> where(array('up_id' => $dow_v)) -> find(); //文件名截取 $file_name = substr($dow_arr['upload_url'], strrpos($dow_arr['upload_url'],'/')+1);</code>
//Dateipfad
<code> $file_path=$dow_arr['upload_url']; $xinxi = $this->download($file_name,$file_path); } }</code>
//So laden Sie Dateien herunter
<code> public function download($file_name='',$file_path=''){ //获取下载文件的大小 $file_size=filesize($file_path); // 打开文件,并判断是否存在 $fp = fopen($file_path,"r") or exit("文件不存在"); //返回的文件 http协议信息 header("Content-type:application/octet-stream"); //按照字节大小返回 header("Accept-Ranges:bytes"); //返回文件大小 header("Accept-Length:$file_size"); //这里客户端的弹出对话框 header("Content-Disposition:attachment;filename=".$file_name); //向客户端回送数据 $buffer=1024; //为了下载的安全。我们最后做一个文件字节读取计数器 $file_count=0; //判断文件是否结束 while(!feof($fp)&&($file_size-$file_count>0)){ $file_data=fread($fp,$buffer); //统计读了多少个字节 $file_count+=$buffer; //把部分数据回送给浏览器 echo $file_data; } fclose($fp); }</code>
iOS-Schnittstelle, mehrere Bilder werden stapelweise heruntergeladen. iOS übergibt mir die ID jedes Bildes, aber mein Download kann nur einmal ausgeführt werden (die iOS-Schnittstelle wird später verwendet, und dies ist derzeit der Fall). wird auf der Webseite debuggt)?
Der Code lautet wie folgt:
public function index(){
<code>$download =array( 0=>3, 1=>5, ); foreach($download as $dow_v){ //查找数据库中的图片信息 $dow_arr = D('Upload') -> where(array('up_id' => $dow_v)) -> find(); //文件名截取 $file_name = substr($dow_arr['upload_url'], strrpos($dow_arr['upload_url'],'/')+1);</code>
//Dateipfad
<code> $file_path=$dow_arr['upload_url']; $xinxi = $this->download($file_name,$file_path); } }</code>
//So laden Sie Dateien herunter
<code> public function download($file_name='',$file_path=''){ //获取下载文件的大小 $file_size=filesize($file_path); // 打开文件,并判断是否存在 $fp = fopen($file_path,"r") or exit("文件不存在"); //返回的文件 http协议信息 header("Content-type:application/octet-stream"); //按照字节大小返回 header("Accept-Ranges:bytes"); //返回文件大小 header("Accept-Length:$file_size"); //这里客户端的弹出对话框 header("Content-Disposition:attachment;filename=".$file_name); //向客户端回送数据 $buffer=1024; //为了下载的安全。我们最后做一个文件字节读取计数器 $file_count=0; //判断文件是否结束 while(!feof($fp)&&($file_size-$file_count>0)){ $file_data=fread($fp,$buffer); //统计读了多少个字节 $file_count+=$buffer; //把部分数据回送给浏览器 echo $file_data; } fclose($fp); }</code>
php muss nur den Pfad des herunterzuladenden Bildes an iOS zurückgeben. Ich habe zuvor einen Fehler gemacht, da das Bild über den Client heruntergeladen wird, sodass ich nur den Pfad zurückgeben und das Bild auf iOS herunterladen muss! ! ! ! (Das Problem wird komplizierter)
Beim Herunterladen kann nur ein Bild zurückgegeben werden.
Wie viele Bilder und Schnittstellen können für iOS angepasst werden?
Wenn es mehrere Dateien gibt, können Sie diese einfach durchlaufen. Ich habe das Gefühl, dass das Problem nicht ganz klar ist.
Ich verstehe nicht, was meinst du damit, dass du es nur einmal herunterladen kannst?
Vielleicht willst du dieses github.com/JeanWolf/httpclient
Diese Bibliothek kann eine ähnliche gleichzeitige Verarbeitung mehrerer Anfragen erreichen