annotate StatusCodes.inc @ 108:f2996720e6d6

Embed some flags, support for overriding.
author Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
date Mon, 07 Mar 2016 20:44:43 +0100
parents ff5fc61aa5ea
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5
18aafb1a8986 Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff changeset
1 <?php
18aafb1a8986 Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff changeset
2 /**
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
3 * StatusCodes provides named constants for
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
4 * HTTP protocol status codes. Written for the
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
5 * Recess Framework (http://www.recessframework.com/)
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
6 *
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
7 * @author Kris Jordan
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
8 * @author Tom Fredrik Blenning Klaussen
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
9 * @copyright MIT
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
10 */
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
11 class StatusCodes
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
12 {
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
13 // [Informational 1xx]
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
14 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
15 * <a href="http://httpstatus.es/100">HTTP_CONTINUE</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
16 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
17 const HTTP_CONTINUE = 100;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
18 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
19 * <a href="http://httpstatus.es/101">HTTP_SWITCHING_PROTOCOLS</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
20 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
21 const HTTP_SWITCHING_PROTOCOLS = 101;
5
18aafb1a8986 Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff changeset
22
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
23 // [Successful 2xx]
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
24 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
25 * <a href="http://httpstatus.es/200">HTTP_OK</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
26 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
27 const HTTP_OK = 200;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
28 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
29 * <a href="http://httpstatus.es/201">HTTP_CREATED</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
30 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
31 const HTTP_CREATED = 201;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
32 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
33 * <a href="http://httpstatus.es/202">HTTP_ACCEPTED</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
34 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
35 const HTTP_ACCEPTED = 202;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
36 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
37 * <a href="http://httpstatus.es/203">HTTP_ACCEPTED</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
38 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
39 const HTTP_NONAUTHORITATIVE_INFORMATION = 203;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
40 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
41 * <a href="http://httpstatus.es/204">HTTP_NO_CONTENT</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
42 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
43 const HTTP_NO_CONTENT = 204;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
44 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
45 * <a href="http://httpstatus.es/205">HTTP_RESET_CONTENT</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
46 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
47 const HTTP_RESET_CONTENT = 205;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
48 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
49 * <a href="http://httpstatus.es/206">HTTP_PARTIAL_CONTENT</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
50 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
51 const HTTP_PARTIAL_CONTENT = 206;
5
18aafb1a8986 Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff changeset
52
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
53 // [Redirection 3xx]
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
54 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
55 * <a href="http://httpstatus.es/300">HTTP_MULTIPLE_CHOICES</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
56 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
57 const HTTP_MULTIPLE_CHOICES = 300;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
58 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
59 * <a href="http://httpstatus.es/301">HTTP_MOVED_PERMANENTLY</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
60 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
61 const HTTP_MOVED_PERMANENTLY = 301;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
62 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
63 * <a href="http://httpstatus.es/302">HTTP_FOUND</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
64 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
65 const HTTP_FOUND = 302;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
66 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
67 * <a href="http://httpstatus.es/303">HTTP_SEE_OTHER</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
68 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
69 const HTTP_SEE_OTHER = 303;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
70 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
71 * <a href="http://httpstatus.es/304">HTTP_NOT_MODIFIED</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
72 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
73 const HTTP_NOT_MODIFIED = 304;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
74 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
75 * <a href="http://httpstatus.es/305">HTTP_USE_PROXY</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
76 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
77 const HTTP_USE_PROXY = 305;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
78 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
79 * <a href="http://httpstatus.es/306">HTTP_UNUSED</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
80 */
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
81 const HTTP_UNUSED = 306;
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
82 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
83 * <a href="http://httpstatus.es/307">HTTP_TEMPORARY_REDIRECT</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
84 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
85 const HTTP_TEMPORARY_REDIRECT = 307;
5
18aafb1a8986 Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff changeset
86
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
87 // [Client Error 4xx]
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
88 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
89 * Defines the beginning of errorCodes
49
6cb775b62281 Fix error with private variable.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 48
diff changeset
90 * @private
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
91 */
49
6cb775b62281 Fix error with private variable.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 48
diff changeset
92 const errorCodesBeginAt = 400;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
93 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
94 * <a href="http://httpstatus.es/400">HTTP_BAD_REQUEST</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
95 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
96 const HTTP_BAD_REQUEST = 400;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
97 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
98 * <a href="http://httpstatus.es/401">HTTP_UNAUTHORIZED</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
99 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
100 const HTTP_UNAUTHORIZED = 401;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
101 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
102 * <a href="http://httpstatus.es/402">HTTP_PAYMENT_REQUIRED</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
103 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
104 const HTTP_PAYMENT_REQUIRED = 402;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
105 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
106 * <a href="http://httpstatus.es/403">HTTP_FORBIDDEN</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
107 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
108 const HTTP_FORBIDDEN = 403;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
109 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
110 * <a href="http://httpstatus.es/404">HTTP_NOT_FOUND</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
111 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
112 const HTTP_NOT_FOUND = 404;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
113 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
114 * <a href="http://httpstatus.es/405">HTTP_METHOD_NOT_ALLOWED</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
115 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
116 const HTTP_METHOD_NOT_ALLOWED = 405;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
117 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
118 * <a href="http://httpstatus.es/406">HTTP_NOT_ACCEPTABLE</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
119 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
120 const HTTP_NOT_ACCEPTABLE = 406;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
121 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
122 * <a href="http://httpstatus.es/407">HTTP_PROXY_AUTHENTICATION_REQUIRED</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
123 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
124 const HTTP_PROXY_AUTHENTICATION_REQUIRED = 407;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
125 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
126 * <a href="http://httpstatus.es/408">HTTP_REQUEST_TIMEOUT</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
127 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
128 const HTTP_REQUEST_TIMEOUT = 408;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
129 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
130 * <a href="http://httpstatus.es/409">HTTP_CONFLICT</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
131 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
132 const HTTP_CONFLICT = 409;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
133 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
134 * <a href="http://httpstatus.es/410">HTTP_GONE</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
135 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
136 const HTTP_GONE = 410;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
137 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
138 * <a href="http://httpstatus.es/411">HTTP_LENGTH_REQUIRED</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
139 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
140 const HTTP_LENGTH_REQUIRED = 411;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
141 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
142 * <a href="http://httpstatus.es/412">HTTP_PRECONDITION_FAILED</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
143 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
144 const HTTP_PRECONDITION_FAILED = 412;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
145 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
146 * <a href="http://httpstatus.es/413">HTTP_REQUEST_ENTITY_TOO_LARGE</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
147 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
148 const HTTP_REQUEST_ENTITY_TOO_LARGE = 413;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
149 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
150 * <a href="http://httpstatus.es/414">HTTP_REQUEST_URI_TOO_LONG</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
151 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
152 const HTTP_REQUEST_URI_TOO_LONG = 414;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
153 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
154 * <a href="http://httpstatus.es/415">HTTP_UNSUPPORTED_MEDIA_TYPE</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
155 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
156 const HTTP_UNSUPPORTED_MEDIA_TYPE = 415;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
157 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
158 * <a href="http://httpstatus.es/416">HTTP_REQUESTED_RANGE_NOT_SATISFIABLE</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
159 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
160 const HTTP_REQUESTED_RANGE_NOT_SATISFIABLE = 416;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
161 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
162 * <a href="http://httpstatus.es/417">HTTP_EXPECTATION_FAILED</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
163 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
164 const HTTP_EXPECTATION_FAILED = 417;
5
18aafb1a8986 Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff changeset
165
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
166 // [Server Error 5xx]
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
167 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
168 * <a href="http://httpstatus.es/500">HTTP_INTERNAL_SERVER_ERROR</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
169 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
170 const HTTP_INTERNAL_SERVER_ERROR = 500;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
171 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
172 * <a href="http://httpstatus.es/501">HTTP_NOT_IMPLEMENTED</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
173 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
174 const HTTP_NOT_IMPLEMENTED = 501;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
175 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
176 * <a href="http://httpstatus.es/502">HTTP_BAD_GATEWAY</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
177 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
178 const HTTP_BAD_GATEWAY = 502;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
179 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
180 * <a href="http://httpstatus.es/503">HTTP_SERVICE_UNAVAILABLE</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
181 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
182 const HTTP_SERVICE_UNAVAILABLE = 503;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
183 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
184 * <a href="http://httpstatus.es/504">HTTP_GATEWAY_TIMEOUT</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
185 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
186 const HTTP_GATEWAY_TIMEOUT = 504;
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
187 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
188 * <a href="http://httpstatus.es/505">HTTP_VERSION_NOT_SUPPORTED</a>
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
189 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
190 const HTTP_VERSION_NOT_SUPPORTED = 505;
5
18aafb1a8986 Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff changeset
191
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
192 private static $messages =
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
193 array(
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
194 // [Informational 1xx]
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
195 100=>'100 Continue',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
196 101=>'101 Switching Protocols',
5
18aafb1a8986 Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff changeset
197
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
198 // [Successful 2xx]
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
199 200=>'200 OK',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
200 201=>'201 Created',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
201 202=>'202 Accepted',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
202 203=>'203 Non-Authoritative Information',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
203 204=>'204 No Content',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
204 205=>'205 Reset Content',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
205 206=>'206 Partial Content',
5
18aafb1a8986 Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff changeset
206
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
207 // [Redirection 3xx]
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
208 300=>'300 Multiple Choices',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
209 301=>'301 Moved Permanently',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
210 302=>'302 Found',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
211 303=>'303 See Other',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
212 304=>'304 Not Modified',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
213 305=>'305 Use Proxy',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
214 306=>'306 (Unused)',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
215 307=>'307 Temporary Redirect',
5
18aafb1a8986 Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff changeset
216
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
217 // [Client Error 4xx]
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
218 400=>'400 Bad Request',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
219 401=>'401 Unauthorized',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
220 402=>'402 Payment Required',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
221 403=>'403 Forbidden',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
222 404=>'404 Not Found',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
223 405=>'405 Method Not Allowed',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
224 406=>'406 Not Acceptable',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
225 407=>'407 Proxy Authentication Required',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
226 408=>'408 Request Timeout',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
227 409=>'409 Conflict',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
228 410=>'410 Gone',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
229 411=>'411 Length Required',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
230 412=>'412 Precondition Failed',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
231 413=>'413 Request Entity Too Large',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
232 414=>'414 Request-URI Too Long',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
233 415=>'415 Unsupported Media Type',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
234 416=>'416 Requested Range Not Satisfiable',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
235 417=>'417 Expectation Failed',
5
18aafb1a8986 Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff changeset
236
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
237 // [Server Error 5xx]
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
238 500=>'500 Internal Server Error',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
239 501=>'501 Not Implemented',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
240 502=>'502 Bad Gateway',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
241 503=>'503 Service Unavailable',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
242 504=>'504 Gateway Timeout',
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
243 505=>'505 HTTP Version Not Supported'
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
244 );
5
18aafb1a8986 Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff changeset
245
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
246 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
247 * Get the header for the specified code.
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
248 *
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
249 * @param $code Http status code
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
250 * @return A textual representation of the header
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
251 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
252 public static function httpHeaderFor($code)
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
253 {
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
254 return 'HTTP/1.1 ' . self::$messages[$code];
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
255 }
5
18aafb1a8986 Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff changeset
256
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
257 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
258 * Get a canonical status message for the specified code
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
259 *
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
260 * @param $code Http status code
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
261 * @return Text for the specified code
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
262 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
263 public static function getMessageForCode($code)
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
264 {
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
265 return self::$messages[$code];
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
266 }
5
18aafb1a8986 Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff changeset
267
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
268 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
269 * Checks if the specified code is an error code.
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
270 *
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
271 * @param $code Http status code
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
272 * @return bool Answer
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
273 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
274 public static function isError($code)
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
275 {
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
276 return is_numeric($code) && $code >= self::HTTP_BAD_REQUEST;
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
277 }
5
18aafb1a8986 Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff changeset
278
48
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
279 /**
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
280 * Can the specified status code have a body?
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
281 *
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
282 * @param $code Http status code
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
283 * @return bool Answer
c6d0892f81ff Documentation.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 43
diff changeset
284 */
43
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
285 public static function canHaveBody($code)
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
286 {
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
287 return
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
288 // True if not in 100s
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
289 ($code < self::HTTP_CONTINUE || $code >= self::HTTP_OK)
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
290 && // and not 204 NO CONTENT
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
291 $code != self::HTTP_NO_CONTENT
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
292 && // and not 304 NOT MODIFIED
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
293 $code != self::HTTP_NOT_MODIFIED;
f42dbf44b661 Beautify file.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 13
diff changeset
294 }
73
947d53f95ccd Refactor Sitemap into a separate class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 58
diff changeset
295
947d53f95ccd Refactor Sitemap into a separate class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 58
diff changeset
296 /**
74
1d5166aba2c5 Documentation fixes.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 73
diff changeset
297 * Extract the numeric code from a header
73
947d53f95ccd Refactor Sitemap into a separate class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 58
diff changeset
298 *
74
1d5166aba2c5 Documentation fixes.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 73
diff changeset
299 * @param $header an http top header
73
947d53f95ccd Refactor Sitemap into a separate class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 58
diff changeset
300 */
947d53f95ccd Refactor Sitemap into a separate class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 58
diff changeset
301 public static function codeFromHeader($header)
947d53f95ccd Refactor Sitemap into a separate class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 58
diff changeset
302 {
947d53f95ccd Refactor Sitemap into a separate class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 58
diff changeset
303 $matches = array();
947d53f95ccd Refactor Sitemap into a separate class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 58
diff changeset
304 preg_match('/HTTP\/\S+\s(\d+)/', $header, $matches);
75
5e76b6feb2ad Correct check for matchlength.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 74
diff changeset
305 if (count($matches) < 1)
83
ff5fc61aa5ea Throw only specific exceptions, eg. non of type Exception base.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 75
diff changeset
306 throw new InvalidArgumentException("Not an http header");
73
947d53f95ccd Refactor Sitemap into a separate class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 58
diff changeset
307 $n = $matches[1];
947d53f95ccd Refactor Sitemap into a separate class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 58
diff changeset
308 return $n;
947d53f95ccd Refactor Sitemap into a separate class.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents: 58
diff changeset
309 }
5
18aafb1a8986 Better handling of errors and globals.
Tom Fredrik "BFG" Klaussen <bfg@blenning.no>
parents:
diff changeset
310 }
13
9dab5b96b789 Clean spurious whitespace.
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents: 5
diff changeset
311 ?>