Tất cả đều được lưu trữ trong $_SERVER
? Ngay cả những người tùy chỉnh?Làm thế nào tôi có thể nhận PHP để hiển thị tiêu đề nhận được từ trình duyệt?
Trả lời
Mọi trường tiêu đề yêu cầu HTTP nằm trong $_SERVER
(trừ Cookie
) và khóa bắt đầu bằng HTTP_
. Nếu bạn đang sử dụng Apache, bạn cũng có thể thử apache_request_headers
.
Hãy thử điều này
print_r
($ _SERVER)
Nó sẽ liệt kê tất cả mọi thứ trong mảng
Nếu bạn muốn sử dụng một cái gì đó cụ thể hơn: ' Php print_r ($ _ SERVER [URL])?>' – LeRoy
Nhìn vào biến $_SERVER để xem những gì nó chứa. Trang hướng dẫn được liên kết có rất nhiều thông tin hữu ích, nhưng cũng chỉ cần thực hiện một số var_dump
trên đó để xem những gì thực sự có trong đó. Nhiều người trong số các mục sẽ hoặc sẽ không được điền vào, tùy thuộc vào những gì khách hàng quyết định làm, và quirks lẻ của PHP. Nhìn vào máy chủ cục bộ của tôi, cũng có một mục nhập $ _SERVER ["ALL_HTTP"] chỉ liệt kê tất cả chúng dưới dạng một chuỗi, nhưng dường như đây không phải là tiêu chuẩn vì nó không được liệt kê trên trang hướng dẫn sử dụng.
bạn có thể sử dụng getallheaders()
để nhận một mảng của tất cả các tiêu đề HTTP được gửi.
$headers = getallheaders();
foreach($headers as $key=>$val){
echo $key . ': ' . $val . '<br>';
}
Bạn chỉ có thể sử dụng apache_request_headers()
hoặc bí danh của nó getallheaders()
.
Cách sử dụng: echo json_encode(getallheaders());
Nếu trên chức năng không tồn tại (PHP cũ hoặc nginx), bạn có thể sử dụng điều này như một dự phòng:
<?php
if (!function_exists('getallheaders')){
function getallheaders() {
$headers = '';
foreach ($_SERVER as $name => $value) {
if (substr($name, 0, 5) == 'HTTP_') {
$headers[str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', substr($name, 5)))))] = $value;
}
}
return $headers;
}
}
?>
bạn có thể sử dụng apache_request_header(); có thể giúp bạn.
$headers = apache_request_headers();
foreach ($headers as $header => $value) {
echo "<pre>";
echo "$header : $value";
echo "</pre>";
}
- 1. Làm cách nào tôi có thể nhận tiêu đề từ phản hồi dưới dạng ServletResponse(). GetHeader (chuỗi) không hiển thị?
- 2. WinForms: Tại sao tôi nhận được InvalidCastException khi hiển thị hộp thoại trình duyệt thư mục?
- 3. làm cách nào tôi có thể hiển thị la bàn/tiêu đề trên bản đồ mapkit
- 4. Làm cách nào để ngăn chặn đầu ra HTML từ PHP hiển thị trong trình duyệt?
- 5. Làm thế nào để tôi nhận được FullCalendar hiển thị thông tin từ nguồn cấp dữ liệu JSON của tôi?
- 6. Làm thế nào để chạy wget từ php để đầu ra được hiển thị trong cửa sổ trình duyệt?
- 7. Chrome, hiển thị pdf, Tiêu đề trùng lặp nhận được từ máy chủ
- 8. Làm thế nào tôi có thể nhận được biểu tượng của ứng dụng từ tên gói?
- 9. Cách nhận chú giải công cụ tiêu đề được tạo javascript cho SVG để hiển thị
- 10. Làm thế nào tôi có thể nhận cookie từ HttpClientHandler.CookieContainer
- 11. Làm thế nào tôi có thể nhận được MongoDB làm việc với php 5.3.5 & wamp?
- 12. Làm thế nào tôi có thể nhận được một bảng trong markdown mà không có tiêu đề cột?
- 13. Làm thế nào tôi có thể nhận được hiển thị biến hợp lý khi sử dụng libC++ trong Xcode 4.3.1?
- 14. Tiêu đề Accept-Encoding được gửi bởi trình duyệt nhưng không nhận được bởi máy chủ
- 15. Có thể kích hoạt tiêu đề được hiển thị trên thanh tiêu đề không?
- 16. Mục tiêu-C, Làm thế nào tôi có thể nhận được giá trị của một UITextField?
- 17. Lỗi PHP không hiển thị trong trình duyệt
- 18. Làm thế nào tôi có thể nhận được giá trị của ant mục tiêu hiện tại?
- 19. MongoCursorException 'không thể nhận được tiêu đề phản hồi'
- 20. Làm cách nào để nhận ngResource của tôi để chấp nhận tiêu đề tùy chỉnh?
- 21. Làm thế nào tôi có thể nhận được Emacs để thụt lề // nhận xét của tôi với mã của tôi?
- 22. Làm thế nào tôi có thể nhận được dấu thời gian hiện nay trong PHP
- 23. Làm thế nào tôi có thể nhận được nhiều màu hơn trong emacs vc-diff?
- 24. Tôi có thể nhận được vbscript để hiển thị thông báo lỗi thân thiện không?
- 25. Làm cách nào tôi có thể nhận được ủy quyền?
- 26. PHP: Hiển thị hộp thoại có/không có xác nhận
- 27. Xác nhận hộp thoại khi tôi đóng trình duyệt?
- 28. Làm thế nào tôi có thể nhận được FullCalendar của Adam Shaw để hiển thị đáp ứng trong một ứng dụng đường ray 4
- 29. Làm thế nào để tôi có thể đọc được từ đầu vào tiêu chuẩn?
- 30. Làm thế nào để thay đổi logo được hiển thị trong thanh tiêu đề của trình duyệt cho một ứng dụng web được triển khai trong tomcat?
Sau đó, thông tin về Cookie thì sao? Chúng tôi có thể sử dụng $ _COOKIE [] để tìm nạp chúng không? –
@dskanth Có, '$ _COOKIE' sẽ chứa các cookie đã được phân tích cú pháp do khách hàng gửi. Nhưng sẽ không có '$ _SERVER ['HTTP_COOKIE']'. – Gumbo
@Gumbo, Khác biệt này với 'getallheaders' như thế nào? Có một số tiêu đề bị tước bỏ sau này không? – Pacerier