Permalink
Browse files

add compatibility with php -v < '5.4'

  • Loading branch information...
1 parent 9709de8 commit 835bcd05731e3ab0208460e2c325127b74f7a0f9 shuvalov-anton committed Dec 8, 2012
Showing with 69 additions and 0 deletions.
  1. +68 −0 includes/compatibility.php
  2. +1 −0 index.php
@@ -0,0 +1,68 @@
+<?php
+/*
+ * If your version of PHP does not include this function:
+ */
+if (!function_exists('http_response_code')) {
+ function http_response_code($code = NULL) {
+
+ if ($code !== NULL) {
+
+ switch ($code) {
+ case 100: $text = 'Continue'; break;
+ case 101: $text = 'Switching Protocols'; break;
+ case 200: $text = 'OK'; break;
+ case 201: $text = 'Created'; break;
+ case 202: $text = 'Accepted'; break;
+ case 203: $text = 'Non-Authoritative Information'; break;
+ case 204: $text = 'No Content'; break;
+ case 205: $text = 'Reset Content'; break;
+ case 206: $text = 'Partial Content'; break;
+ case 300: $text = 'Multiple Choices'; break;
+ case 301: $text = 'Moved Permanently'; break;
+ case 302: $text = 'Moved Temporarily'; break;
+ case 303: $text = 'See Other'; break;
+ case 304: $text = 'Not Modified'; break;
+ case 305: $text = 'Use Proxy'; break;
+ case 400: $text = 'Bad Request'; break;
+ case 401: $text = 'Unauthorized'; break;
+ case 402: $text = 'Payment Required'; break;
+ case 403: $text = 'Forbidden'; break;
+ case 404: $text = 'Not Found'; break;
+ case 405: $text = 'Method Not Allowed'; break;
+ case 406: $text = 'Not Acceptable'; break;
+ case 407: $text = 'Proxy Authentication Required'; break;
+ case 408: $text = 'Request Time-out'; break;
+ case 409: $text = 'Conflict'; break;
+ case 410: $text = 'Gone'; break;
+ case 411: $text = 'Length Required'; break;
+ case 412: $text = 'Precondition Failed'; break;
+ case 413: $text = 'Request Entity Too Large'; break;
+ case 414: $text = 'Request-URI Too Large'; break;
+ case 415: $text = 'Unsupported Media Type'; break;
+ case 500: $text = 'Internal Server Error'; break;
+ case 501: $text = 'Not Implemented'; break;
+ case 502: $text = 'Bad Gateway'; break;
+ case 503: $text = 'Service Unavailable'; break;
+ case 504: $text = 'Gateway Time-out'; break;
+ case 505: $text = 'HTTP Version not supported'; break;
+ default:
+ exit('Unknown http status code "' . htmlentities($code) . '"');
+ break;
+ }
+
+ $protocol = (isset($_SERVER['SERVER_PROTOCOL']) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0');
+
+ header($protocol . ' ' . $code . ' ' . $text);
+
+ $GLOBALS['http_response_code'] = $code;
+
+ } else {
+
+ $code = (isset($GLOBALS['http_response_code']) ? $GLOBALS['http_response_code'] : 200);
+
+ }
+
+ return $code;
+
+ }
+ }
View
@@ -1,5 +1,6 @@
<?php
+include dirname( __FILE__ ) . '/includes/compatibility.php';
include dirname( __FILE__ ) . '/includes/functions.php';
include dirname( __FILE__ ) . '/includes/class.db-api.php';
include dirname( __FILE__ ) . '/config.php';

0 comments on commit 835bcd0

Please sign in to comment.