• PHP返回404状态码,由服务器处理


    1. 通过header()方法来实现,

       最简单的方法,而且对php的版本没什么限制

       <?php

             header('HTTP/1.1 404 Not Found');

             header("status: 404 Not Found");

       ?>

       当服务器设置了404页面后,访问该php就会自动返回404状态及404页面。

    2. 使用http_response_code()方法,

         如果你的php版本大于5.4的话,可以使用这个新增的方法

        <?php

            http_response_code(404);

        ?>

        注意:如果你的版本低于5.4,但是你又非得使用http_response_code(),下面是这个方法的代码

     1 <?php
     2 
     3     if (!function_exists('http_response_code')) {
     4         function http_response_code($code = NULL) {
     5 
     6             if ($code !== NULL) {
     7 
     8                 switch ($code) {
     9                     case 100: $text = 'Continue'; break;
    10                     case 101: $text = 'Switching Protocols'; break;
    11                     case 200: $text = 'OK'; break;
    12                     case 201: $text = 'Created'; break;
    13                     case 202: $text = 'Accepted'; break;
    14                     case 203: $text = 'Non-Authoritative Information'; break;
    15                     case 204: $text = 'No Content'; break;
    16                     case 205: $text = 'Reset Content'; break;
    17                     case 206: $text = 'Partial Content'; break;
    18                     case 300: $text = 'Multiple Choices'; break;
    19                     case 301: $text = 'Moved Permanently'; break;
    20                     case 302: $text = 'Moved Temporarily'; break;
    21                     case 303: $text = 'See Other'; break;
    22                     case 304: $text = 'Not Modified'; break;
    23                     case 305: $text = 'Use Proxy'; break;
    24                     case 400: $text = 'Bad Request'; break;
    25                     case 401: $text = 'Unauthorized'; break;
    26                     case 402: $text = 'Payment Required'; break;
    27                     case 403: $text = 'Forbidden'; break;
    28                     case 404: $text = 'Not Found'; break;
    29                     case 405: $text = 'Method Not Allowed'; break;
    30                     case 406: $text = 'Not Acceptable'; break;
    31                     case 407: $text = 'Proxy Authentication Required'; break;
    32                     case 408: $text = 'Request Time-out'; break;
    33                     case 409: $text = 'Conflict'; break;
    34                     case 410: $text = 'Gone'; break;
    35                     case 411: $text = 'Length Required'; break;
    36                     case 412: $text = 'Precondition Failed'; break;
    37                     case 413: $text = 'Request Entity Too Large'; break;
    38                     case 414: $text = 'Request-URI Too Large'; break;
    39                     case 415: $text = 'Unsupported Media Type'; break;
    40                     case 500: $text = 'Internal Server Error'; break;
    41                     case 501: $text = 'Not Implemented'; break;
    42                     case 502: $text = 'Bad Gateway'; break;
    43                     case 503: $text = 'Service Unavailable'; break;
    44                     case 504: $text = 'Gateway Time-out'; break;
    45                     case 505: $text = 'HTTP Version not supported'; break;
    46                     default:
    47                         exit('Unknown http status code "' . htmlentities($code) . '"');
    48                     break;
    49                 }
    50 
    51                 $protocol = (isset($_SERVER['SERVER_PROTOCOL']) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0');
    52 
    53                 header($protocol . ' ' . $code . ' ' . $text);
    54 
    55                 $GLOBALS['http_response_code'] = $code;
    56 
    57             } else {
    58 
    59                 $code = (isset($GLOBALS['http_response_code']) ? $GLOBALS['http_response_code'] : 200);
    60 
    61             }
    62 
    63             return $code;
    64 
    65         }
    66     }
    67 
    68 ?>
    View Code
  • 相关阅读:
    鸽巢原理(The Pigeonhole Principle)(抽屉原理)
    VS2010显示行号
    HDU 2546 饭卡
    组合数学之排列组合(Permutations and Combinations)(四种情况)
    php中的$_SERVER方法初识
    重新认识hasLayout——IE浏览器css bug的一大罪恶根源 转
    javascript实现简单的链式调用
    Javascript 静态类的实现
    Object类相关的属性,方法和操作符
    <转>前端开发中的MCRV模式
  • 原文地址:https://www.cnblogs.com/tommy-huang/p/4493861.html
Copyright © 2020-2023  润新知