Giới thiệu
Dưới đây là danh sách các tùy chọn ngữ cảnh cho http:// và https:// vận tải
| method | Phương thức HTTPđược hỗ trợ bởi máy chủ từ xa. Mặc định là GET. |
| tiêu đề | Các tiêu đề bổ sung sẽ được gửi khi có yêu cầu. |
| user_agent | Giá trị cần gửi với tiêu đề User-Agent:. Theo mặc định, cài đặt php.ini user_agent được sử dụng. |
| nội dung | Dữ liệu bổ sung sẽ được gửi sau tiêu đề. Thường được sử dụng với các yêu cầu POST hoặc PUT. |
| proxy | URI chỉ định địa chỉ của máy chủ proxy. |
| request_fulluri boolean | Khi được đặt thành TRUE, toàn bộ URI sẽ được sử dụng khi xây dựng yêu cầu. Giá trị mặc định là FALSE. |
| follow_location | Thực hiện theo chuyển hướng tiêu đề Vị trí. Đặt thành 0 để tắt. Kết quả là 1. |
| max_redirects | Số lượng chuyển hướng tối đa cần tuân theo. |
| protocol_version | Phiên bản giao thức HTTP. Mặc định là 1.0. |
| thời gian chờ | Thời gian chờ đọc tính bằng giây, được chỉ định bởi một float (ví dụ:10.5). |
| ignore_errors | Tìm nạp nội dung ngay cả trên mã trạng thái lỗi. Giá trị mặc định là FALSE. |
Ví dụ sau tìm nạp tiêu đề và nội dung từ http:// URL
Ví dụ
<?php
$url = "http://localhost/testscript.php";
$opts = array('http' =>
array(
'method' => 'GET',
'max_redirects' => '0',
'ignore_errors' => '1'
);
$context = stream_context_create($opts);
$stream = fopen($url, 'r', false, $context);
var_dump(stream_get_meta_data($stream));
?> Đầu ra
Điều này hiển thị thông tin tiêu đề và siêu dữ liệu như sau -
array(10) {
["timed_out"]=>
bool(false)
["blocked"]=>
bool(true)
["eof"]=>
bool(false)
["wrapper_data"]=>
array(7) {
[0]=>
string(15) "HTTP/1.1 200 OK"
[1]=>
string(35) "Date: Thu, 17 Sep 2020 07:04:47 GMT"
[2]=>
string(55) "Server: Apache/2.4.41 (Win64) OpenSSL/1.0.2s PHP/7.1.32"
[3]=>
string(24) "X-Powered-By: PHP/7.1.32"
[4]=>
string(17) "Content-Length: 0"
[5]=>
string(17) "Connection: close"
[6]=>
string(38) "Content-Type: text/html; charset=UTF-8"
}
["wrapper_type"]=>
string(4) "http"
["stream_type"]=>
string(14) "tcp_socket/ssl"
["mode"]=>
string(1) "r"
["unread_bytes"]=>
int(0)
["seekable"]=>
bool(false)
["uri"]=>
string(31) "http://localhost/testscript.php"
}