Heim  >  Artikel  >  php教程  >  Rekursive PHPCURL-Implementierung zum Hochladen von Dateien

Rekursive PHPCURL-Implementierung zum Hochladen von Dateien

WBOY
WBOYOriginal
2016-12-05 13:27:481951Durchsuche

Wenn Sie interessiert sind, können Sie zuerst den vorherigen Artikel lesen, dann hängen die beiden zusammen. Unterschiedliche Bilder entsprechen unterschiedlichen Typ-IDs,
<?php<br /> <br /> /*<br /> * Zeit: 2. Dezember 2016 17:21:37<br /> * Funktion: Ordnen Sie die Raum-ID im Text der Datei im Ordner zu und laden Sie sie auf den Server hoch <br /> * Hauptparameterbeschreibung: $file_qqq Bilddateipfad <br /> *$ R Roomid, holen Sie sich einen Array-Zyklus und holen Sie sich den Parameter <br /> *$ Typ Upload-Typ, erhalten Sie <br /> entsprechend dem Namen des Bildes *Autor: Zhangchenyang<br /> */<br /> ini_set('max_execution_time', '0'); //Legen Sie das Timeout fest <br /> header('content-type:text/html;charset=utf8');<br /> <br /> <br /> $act = $_GET['pass'];<br /> if ($act == 'zhangchenyang') {<br /> /**<br /> *Uhrzeit: 2. Dezember 2016 16:09:33<br /> * Hinweis: 1: Ist der Bildpfad korrekt<br />? * 2: Ob die Raum-ID <br /> entspricht *<br /> ​​*/<br /> $file = './room400.txt'; //Hochgeladene Raum-ID-Datei <br /> $content = file_get_contents($file);<br /> //echo $content;<br /> <br /> $array = explosion("rn", $content); //In Array konvertieren<br /> //Der Unterschrank listet alle Dateien auf<br /> Funktionsbaum ($directory)<br /> <br /> {<br />          globales $array;<br />          $mydir = dir($directory);<br /> <br /> echo "<ul>n";<br> <br> ​​​​​while ($file = $mydir->read()) {<br> <br> If ((is_dir("$directory/$file")) AND ($file != ".") AND ($file != "..")) {<br>                       $arr = array_shift($array);<br> <br>                                                                                                                                                                                                            <br> Tree("$directory/$file");<br> <br>                 } sonst<br> <br> <br>                    global $arr;<br> If (is_dir('$file')) {<br> <br>                                                          sonst {<br> <br> <br> If ($file !== '.' & $file !== ".." & $file != '') {<br>                       $img_name = mb_substr($file, 0, 1, 'utf-8');<br> If (is_numeric($img_name)) {<br> echo "<li>$file,$img_name</li>n";<br>                          $file_qqq = "$directory/$file";<br>                                                                                                                                                                                              //Parameter zum Aufbau der Schnittstelle<br>                        $r = $arr;<br>                         $t = $img_name;<br> <br>                        $return_data = up($file_qqq, $r, $t); //1: Der Pfad des Bildes 2: Raum-ID 3: Übertragungstyp <br> If ($return_data == '200') {<br>                                                          //Erfolgreich hochgeladen <br> $ok_info = $file_qqq . '-Dateiname--'                                     file_put_contents('ok400.txt', $ok_info, FILE_APPEND);<br> <br> } Sonst {<s> $err_info = $file_qqq . '-Dateiname--' file_put_contents('error400.txt', $err_info, FILE_APPEND);<br> <br> <br>                                                   } <br> <br>                   }<br> <br>                 }<br>             }<br> <br> <br>         }<br> <br> echo "</ul>n";<br> <br>           $mydir->close();<br> <br> }<br> <br> <br> echo "<h2>Das Verzeichnis ist rosa</h2><br>n";<br> <br> Baum("./img400");<br> Funktion up($file_qqq, $r, $type)<br> {<br> <br>         $u = '1';<br>          $t = '1';<br> <br> <br>          $ch = curl_init();<br>          $source = $file_qqq;<br>         $source = realpath($source);<br> //Fügen Sie das @-Symbol hinzu und Curl behandelt es als Datei-Upload <br>         $data = array('img' => '@' . $source);<br> //$url='http://localhost/update_admin.php?u=%s&t=%s&r=%s&type=%s' /Testschnittstelle<br>           $url = 'http://localhost/room/update_admin.php?u=%s&t=%s&r=%s&type=%s';<br> $url = sprintf($url, $u, $t, $r, $type);<br> ​​​​ //var_dump($url);<br>          $cfile = curl_file_create($source, 'image/jpeg', '1.jpg');<br> <br> // POST-Daten festlegen<br>         $data = array('uploadedfile' => $cfile);<br>        $ch = curl_init($url);<br>         curl_setopt($ch, CURLOPT_URL, $url);<br>         curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);<br>         curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); //不验证证书<br>         curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); //不验证证书<br>         curl_setopt($ch, CURLOPT_POST, true);<br>         curl_setopt($ch, CURLOPT_POSTFIELDS, $data);<br>         $result = curl_exec($ch);<br> //var_dump($data);<br>         $error = curl_error($ch);<br>         $b = curl_multi_getcontent($ch);<br>         curl_close($ch);<br> <br> <br>         return json_decode($result);<br> <br>     }<br> <br> <br> } else {<br> <br>     echo "<script>alert('你的口令有误请重试')</script>";<br> }</s>

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn