本文整理汇总了PHP中HTTP_Request::download方法的典型用法代码示例。如果您正苦于以下问题:PHP HTTP_Request::download方法的具体用法?PHP HTTP_Request::download怎么用?PHP HTTP_Request::download使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类HTTP_Request
的用法示例。
在下文中一共展示了HTTP_Request::download方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: trim
*
* PsychoStats is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with PsychoStats. If not, see <http://www.gnu.org/licenses/>.
*
* Version: $Id: index.php 442 2008-05-13 10:30:11Z lifo $
*/
define("PSYCHOSTATS_PAGE", true);
define("PSYCHOSTATS_INSTALL_PAGE", true);
require_once "./common.php";
$opts = init_session_opts(true);
$newer_avail = false;
$h = new HTTP_Request('http://updates.psychostats.com/releases/' . PS_INSTALL_VERSION);
$res = $h->download();
if ($h->status() == '200' and $res) {
$newer_avail = $res[0] ? trim($res[0]) : 0;
$release_date = $h->header('x-psychostats-date');
$ps_version = $h->header('x-psychostats-ver');
}
$newest_url = 'http://www.psychostats.com/downloads/psychostats/';
$validfields = array('s', 're');
$cms->theme->assign_request_vars($validfields, true);
$cms->theme->assign(array('install' => $opts['install'], 'newer_avail' => $newer_avail, 'release_date' => $release_date, 'ps_version' => $ps_version, 'local_ps_version' => PS_INSTALL_VERSION, 'newest_url' => $newest_url));
// display the output
$basename = basename(__FILE__, '.php');
$cms->theme->add_css('css/2column.css');
$cms->full_page($basename, $basename, $basename . '_header', $basename . '_footer');
示例2: implode
function ip_lookup($ip)
{
if (is_array($ip)) {
$ip = array_unique(array_filter($ip, 'not_empty'));
}
if (!$ip) {
return '';
}
$url = $this->conf['theme']['map']['iplookup_url'];
if (!$url) {
return false;
}
if (substr($url, 0, 4) == 'http') {
// URL LOOKUP
$ipstr = is_array($ip) ? implode(',', $ip) : $ip;
$url = strpos($url, '$ip') === FALSE ? $url . $ipstr : str_replace('$ip', $ipstr, $url);
include_once dirname(dirname(__FILE__)) . '/class_HTTP.php';
$lookup = new HTTP_Request($url);
$text = $lookup->download();
return $text;
} else {
// LOCAL FILE LOOKUP
// geoip* must be in the path somewhere...
if (!@(include_once "includes/geoipcity.inc")) {
return '<markers></markers>';
}
$gi = geoip_open($url, GEOIP_STANDARD);
$list = (array) $ip;
$info = array();
foreach ($list as $ipstr) {
$info[] = geoip_record_by_addr($gi, $ipstr);
}
geoip_close($gi);
$xml = "<markers>\n";
if ($info) {
for ($i = 0; $i < count($info); $i++) {
$xml .= sprintf(" <marker lat='%s' lng='%s' ip='%s' />\n", $info[$i]->latitude, $info[$i]->longitude, $list[$i]);
}
}
$xml .= "</markers>\n";
return $xml;
}
}
示例3: download
function download($follow_redirect = true)
{
$crlf = "\r\n";
// generate request
$req = $this->_method . ' ' . $this->_uri . ' HTTP/1.0' . $crlf . 'Host: ' . $this->_host . $crlf . $crlf;
if ($this->_postdata) {
$req .= $this->_postdata;
}
// fetch
ob_start();
$this->_fp = fsockopen(($this->_protocol == 'https' ? 'ssl://' : '') . $this->_host, $this->_port, $this->errno, $this->errstr, 10);
$err = ob_get_clean();
if ($err) {
$this->_fp = false;
$this->_error = strip_tags($err);
$response = '';
}
if ($this->_fp) {
fwrite($this->_fp, $req);
while (is_resource($this->_fp) && $this->_fp && !feof($this->_fp)) {
$response .= fread($this->_fp, 1024);
}
fclose($this->_fp);
} else {
$response = '';
}
// split header and body
$pos = strpos($response, $crlf . $crlf);
if ($pos === false) {
return $response;
}
$header = substr($response, 0, $pos);
$body = substr($response, $pos + 2 * strlen($crlf));
// parse headers
$this->_headers = array();
$lines = explode($crlf, $header);
list($zzz, $this->_error, $zzz) = explode(" ", $lines[0], 3);
unset($zzz);
foreach ($lines as $line) {
if (($pos = strpos($line, ':')) !== false) {
$this->_headers[strtolower(trim(substr($line, 0, $pos)))] = trim(substr($line, $pos + 1));
}
}
// redirection?
if (isset($headers['location']) and $follow_redirect) {
$http = new HTTP_Request($headers['location']);
return $http->download($http);
} else {
$this->_text = $body;
return $body;
}
}