當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Main::download方法代碼示例

本文整理匯總了PHP中Main::download方法的典型用法代碼示例。如果您正苦於以下問題:PHP Main::download方法的具體用法?PHP Main::download怎麽用?PHP Main::download使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Main的用法示例。


在下文中一共展示了Main::download方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: downloadHttp

 /**
  * Efficiently Download a file through HTTP.  Returns downloaded file as a string in-memory
  * This is best used for small files
  *
  * If an HTTP proxy has been configured (http_proxy Pyrus\Config
  * setting), the proxy will be used.
  *
  * @param string             $url          the URL to download
  * @param false|string|array $lastmodified header values to check against
  *                                         for caching use false to return
  *                                         the header values from this download
  * @param false|array        $accept       Accept headers to send
  *
  * @return string|array  Returns the contents of the downloaded file or a PEAR
  *                       error on failure.  If the error is caused by
  *                       socket-related errors, the error object will
  *                       have the fsockopen error code available through
  *                       getCode().  If caching is requested, then return the header
  *                       values.
  *
  * @throws Pyrus\REST\Exception if the url is invalid
  * @access public
  */
 function downloadHttp($url, $lastmodified = null, $accept = false)
 {
     $info = parse_url($url);
     if (!isset($info['scheme']) || !in_array($info['scheme'], array('http', 'https'))) {
         throw new REST\Exception('Cannot download non-http URL "' . $url . '"');
     }
     if (!isset($info['host'])) {
         throw new REST\Exception('Cannot download from non-URL "' . $url . '"');
     }
     $response = Main::download($url);
     if ($response->code == 304 && ($lastmodified || $lastmodified === false)) {
         return false;
     }
     if (isset($response->headers['content-length'])) {
         $length = $response->headers['content-length'];
     } else {
         $length = -1;
     }
     $data = $response->body;
     if ($lastmodified === false || $lastmodified) {
         if (isset($response->headers['etag'])) {
             $lastmodified = array('ETag' => $response->headers['etag']);
         }
         if (isset($response->headers['last-modified'])) {
             if (is_array($lastmodified)) {
                 $lastmodified['Last-Modified'] = $response->headers['last-modified'];
             } else {
                 $lastmodified = $response->headers['last-modified'];
             }
         }
         return array($data, $lastmodified, $response->headers);
     }
     return $data;
 }
開發者ID:peopleplan,項目名稱:Pyrus,代碼行數:57,代碼來源:REST.php

示例2: _fromURL

 /**
  * Attempts to get the xml from the URL specified.
  *
  * @param string $xml_url URL to the channel xml http://pear.php.net/channel.xml
  *
  * @return string Channel XML
  */
 protected function _fromURL($xml_url)
 {
     $response = Main::download($xml_url);
     return $response->body;
 }
開發者ID:helgi,項目名稱:Pyrus,代碼行數:12,代碼來源:ChannelFile.php


注:本文中的Main::download方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。