http://

https://

http:// -- https://訪問 HTTP(s) 網(wǎng)址

說明

允許通過 HTTP 對文件/資源進行可讀訪問。默認使用 HTTP 1.0 GET。 HTTP 請求會附帶一個 Host: 頭,用于兼容基于域名的虛擬主機。 如果在你的 php.ini 文件中或字節(jié)流上下文(context)配置了 user_agent 字符串,它也會被包含在請求之中。

數(shù)據(jù)流允許讀取資源的 body,而 headers 則儲存在了 $http_response_header 變量里。

如果需要知道文檔資源來自哪個 URL(經(jīng)過所有重定向的處理后), 需要處理數(shù)據(jù)流返回的系列響應(yīng)報頭(response headers)。

The from directive will be used for the From: header if set and not overwritten by the 上下文(Context)選項和參數(shù).

用法

  • http://example.com
  • http://example.com/file.php?var1=val1&var2=val2
  • http://user:password@example.com
  • https://example.com
  • https://example.com/file.php?var1=val1&var2=val2
  • https://user:password@example.com

可選項

封裝協(xié)議概要
屬性 支持
allow_url_fopen 限制 Yes
允許讀取 Yes
允許寫入 No
允許添加 No
允許同時讀和寫 N/A
支持 stat() No
支持 unlink() No
支持 rename() No
支持 mkdir() No
支持 rmdir() No

范例

示例 #1 檢測重定向后最終的 URL

<?php
$url 
'http://www.example.com/redirecting_page.php';

$fp fopen($url'r');

$meta_data stream_get_meta_data($fp);
foreach (
$meta_data['wrapper_data'] as $response) {

    
/* 我們是否被重定向了? */
    
if (strtolower(substr($response010)) == 'location: ') {

        
/* 更新我們被重定向后的 $url */
        
$url substr($response10);
    }

}

?>

注釋

注意: openssl 擴展啟用后才能夠支持 HTTPS 協(xié)議。

HTTP 連接是只讀的;還不支持對一個 HTTP 資源進行寫數(shù)據(jù)或者復(fù)制文件。

比如發(fā)送 POSTPUT 請求, 可以在 HTTP Contexts 的支持下實現(xiàn)。

參見