예제 #1
0
 public static function down()
 {
     if (self::$host) {
         $fp = fsockopen(self::$host, self::$port, self::$errno, self::$errstr, self::$timeout);
         self::$request = self::method(self::$method) . " " . self::$uri . " HTTP/1.0\r\n";
         //请求方式 资源 协议
         self::$request .= "Host: " . self::$host . "\r\n";
         //服务器
         self::$request .= "User-agent:" . self::$agent . "\r\n";
         //客户端
         foreach (self::$accept as $k => $v) {
             self::$request .= self::accept($k, $v) . "\r\n";
         }
         if (self::$cookie != '') {
             self::$request .= "Cookie: " . self::$cookie . "\r\n";
         }
         //POST的情况下
         $post = self::$body . "\r\n";
         if (self::$method == 2) {
             self::$request .= "Content-Length: " . strlen($post) . "\r\n";
         }
         self::$request .= "Referer: http://" . self::$host . self::$uri . "\r\n";
         self::$request .= "Connection: close\r\n";
         self::$request .= "\r\n";
         if (self::$method == 2) {
             self::$request .= $post;
         }
         echo '下载图片' . PHP_EOL;
         if ($fp) {
             //                    $fi = fopen(ROOT.'img/'.time().'.png', 'w');
             fwrite($fp, self::$request);
             //写入内容
             $str = '';
             while (!feof($fp)) {
                 $str = fgets($fp, 1024);
                 //                        echo $str;
                 self::$response .= $str;
             }
             //                    fclose($fi);
             fclose($fp);
             return true;
         }
     }
     return false;
 }