php获取客户端及服务器相关信息

WBOY
Lepaskan: 2016-07-25 09:07:22
asal
854 orang telah melayarinya
  1. $headers = array();
  2. foreach ($_SERVER as $key => $value) {
  3. if ('HTTP_' == substr($key, 0, 5)) {
  4. $headers[str_replace('_', '-', substr($key, 5))] = $value;
  5. }
  6. }
  7. ?>
复制代码

说明:RFC里明确指出了信息头的名字是不区分大小写的。

不过并不是所有的HTTP请求头都是以HTTP_开头的的键的形式存在与$_SERVER里,比如说Authorization,Content-Length,Content-Type就不是这样,所以说为了取得所有的HTTP请求头,还需要加上下面这段代码:

  1. if (isset($_SERVER['PHP_AUTH_DIGEST'])) {
  2. $header['AUTHORIZATION'] = $_SERVER['PHP_AUTH_DIGEST']);
  3. } elseif (isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_PW'])) {
  4. $header['AUTHORIZATION'] = base64_encode($_SERVER['PHP_AUTH_USER'] . ':' . $_SERVER['PHP_AUTH_PW']));
  5. }
  6. if (isset($_SERVER['CONTENT_LENGTH'])) {
  7. $header['CONTENT-LENGTH'] = $_SERVER['CONTENT_LENGTH'];
  8. }
  9. if (isset($_SERVER['CONTENT_TYPE'])) {
  10. $header['CONTENT-TYPE'] = $_SERVER['CONTENT_TYPE'];
  11. }
  12. ?>
复制代码


sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan