Last active
May 5, 2016 20:27
-
-
Save mkody/5ca93e554edf71943e44391b96051237 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
function getHTTPCode($code) { | |
switch($code) { | |
// From https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml (2016-03-01) | |
case 100: | |
return '100 - Continue'; | |
break; | |
case 101: | |
return '101 - Switching Protocols'; | |
break; | |
case 102: | |
return '102 - Processing'; | |
break; | |
case 200: | |
return '200 - OK'; | |
break; | |
case 201: | |
return '201 - Created'; | |
break; | |
case 202: | |
return '202 - Accepted'; | |
break; | |
case 203: | |
return '203 - Non-Authoritative Information'; | |
break; | |
case 204: | |
return '204 - No Content'; | |
break; | |
case 205: | |
return '205 - Reset Content'; | |
break; | |
case 206: | |
return '206 - Partial Content'; | |
break; | |
case 207: | |
return '207 - Multi-Status'; | |
break; | |
case 208: | |
return '208 - Already Reported'; | |
break; | |
case 226: | |
return '226 - IM Used'; | |
break; | |
case 300: | |
return '300 - Multiple Choices'; | |
break; | |
case 301: | |
return '301 - Moved Permanently'; | |
break; | |
case 302: | |
return '302 - Found'; | |
break; | |
case 303: | |
return '303 - See Other'; | |
break; | |
case 304: | |
return '304 - Not Modified'; | |
break; | |
case 305: | |
return '305 - Use Proxy'; | |
break; | |
case 306: | |
return '306 - (Unused)'; | |
break; | |
case 307: | |
return '307 - Temporary Redirect'; | |
break; | |
case 308: | |
return '308 - Permanent Redirect'; | |
break; | |
case 400: | |
return '400 - Bad Request'; | |
break; | |
case 401: | |
return '401 - Unauthorized'; | |
break; | |
case 402: | |
return '402 - Payment Required'; | |
break; | |
case 403: | |
return '403 - Forbidden'; | |
break; | |
case 404: | |
return '404 - Not Found'; | |
break; | |
case 405: | |
return '405 - Method Not Allowed'; | |
break; | |
case 406: | |
return '406 - Not Acceptable'; | |
break; | |
case 407: | |
return '407 - Proxy Authentication Required'; | |
break; | |
case 408: | |
return '408 - Request Timeout'; | |
break; | |
case 409: | |
return '409 - Conflict'; | |
break; | |
case 410: | |
return '410 - Gone'; | |
break; | |
case 411: | |
return '411 - Length Required'; | |
break; | |
case 412: | |
return '412 - Precondition Failed'; | |
break; | |
case 413: | |
return '413 - Payload Too Large'; | |
break; | |
case 414: | |
return '414 - URI Too Long'; | |
break; | |
case 415: | |
return '415 - Unsupported Media Type'; | |
break; | |
case 416: | |
return '416 - Range Not Satisfiable'; | |
break; | |
case 417: | |
return '417 - Expectation Failed'; | |
break; | |
case 421: | |
return '421 - Misdirected Request'; | |
break; | |
case 422: | |
return '422 - Unprocessable Entity'; | |
break; | |
case 423: | |
return '423 - Locked'; | |
break; | |
case 424: | |
return '424 - Failed Dependency'; | |
break; | |
case 425: | |
return '425 - Unassigned'; | |
break; | |
case 426: | |
return '426 - Upgrade Required'; | |
break; | |
case 427: | |
return '427 - Unassigned'; | |
break; | |
case 428: | |
return '428 - Precondition Required'; | |
break; | |
case 429: | |
return '429 - Too Many Requests'; | |
break; | |
case 430: | |
return '430 - Unassigned'; | |
break; | |
case 431: | |
return '431 - Request Header Fields Too Large'; | |
break; | |
case 451: | |
return '451 - Unavailable For Legal Reasons'; | |
break; | |
case 500: | |
return '500 - Internal Server Error'; | |
break; | |
case 501: | |
return '501 - Not Implemented'; | |
break; | |
case 502: | |
return '502 - Bad Gateway'; | |
break; | |
case 503: | |
return '503 - Service Unavailable'; | |
break; | |
case 504: | |
return '504 - Gateway Timeout'; | |
break; | |
case 505: | |
return '505 - HTTP Version Not Supported'; | |
break; | |
case 506: | |
return '506 - Variant Also Negotiates'; | |
break; | |
case 507: | |
return '507 - Insufficient Storage'; | |
break; | |
case 508: | |
return '508 - Loop Detected'; | |
break; | |
case 509: | |
return '509 - Unassigned'; | |
break; | |
case 510: | |
return '510 - Not Extended'; | |
break; | |
case 511: | |
return '511 - Network Authentication Required'; | |
break; | |
// Because why not? | |
case 418: | |
return '418 - I\'m a teapot'; | |
break; | |
// From https://github.com/joho/7XX-rfc (2015-11-06) | |
case 701: | |
return '701 - Meh'; | |
break; | |
case 702: | |
return '702 - Emacs'; | |
break; | |
case 703: | |
return '703 - Explosion'; | |
break; | |
case 704: | |
return '704 - Goto Fail'; | |
break; | |
case 705: | |
return '705 - I wrote the code and missed the necessary validation by an oversight (see 795)'; | |
break; | |
case 710: | |
return '710 - PHP'; | |
break; | |
case 711: | |
return '711 - Convenience Store'; | |
break; | |
case 712: | |
return '712 - NoSQL'; | |
break; | |
case 718: | |
return '718 - Haskell'; | |
break; | |
case 719: | |
return '719 - I am not a teapot'; | |
break; | |
case 720: | |
return '720 - Unpossible'; | |
break; | |
case 721: | |
return '721 - Known Unknowns'; | |
break; | |
case 722: | |
return '722 - Unknown Unknowns'; | |
break; | |
case 723: | |
return '723 - Tricky'; | |
break; | |
case 724: | |
return '724 - This line should be unreachable'; | |
break; | |
case 725: | |
return '725 - It works on my machine'; | |
break; | |
case 726: | |
return '726 - It\'s a feature, not a bug'; | |
break; | |
case 727: | |
return '727 - 32 bits is plenty'; | |
break; | |
case 730: | |
return '730 - Fucking Bower'; | |
break; | |
case 731: | |
return '731 - Fucking Rubygems'; | |
break; | |
case 732: | |
return '732 - Fucking Unic💩de'; | |
break; | |
case 733: | |
return '733 - Fucking Deadlocks'; | |
break; | |
case 734: | |
return '734 - Fucking Deferreds'; | |
break; | |
case 735: | |
return '735 - Fucking IE'; | |
break; | |
case 736: | |
return '736 - Fucking Race Conditions'; | |
break; | |
case 737: | |
return '737 - FuckThreadsing'; | |
break; | |
case 738: | |
return '738 - Fucking Bundler'; | |
break; | |
case 739: | |
return '739 - Fucking Windows'; | |
break; | |
case 740: | |
return '740 - Computer says no'; | |
break; | |
case 741: | |
return '741 - Compiling'; | |
break; | |
case 742: | |
return '742 - A kitten dies'; | |
break; | |
case 743: | |
return '743 - I thought I knew regular expressions'; | |
break; | |
case 744: | |
return '744 - Y U NO write integration tests?'; | |
break; | |
case 745: | |
return '745 - I don\'t always test my code, but when I do I do it in production'; | |
break; | |
case 746: | |
return '746 - Missed Ballmer Peak'; | |
break; | |
case 747: | |
return '747 - Motherfucking Snakes on the Motherfucking Plane'; | |
break; | |
case 748: | |
return '748 - Confounded by Ponies'; | |
break; | |
case 749: | |
return '749 - Reserved for Chuck Norris'; | |
break; | |
case 750: | |
return '750 - Didn\'t bother to compile it'; | |
break; | |
case 753: | |
return '753 - Syntax Error'; | |
break; | |
case 754: | |
return '754 - Too many semi-colons'; | |
break; | |
case 755: | |
return '755 - Not enough semi-colons'; | |
break; | |
case 756: | |
return '756 - Insufficiently polite'; | |
break; | |
case 757: | |
return '757 - Excessively polite'; | |
break; | |
case 759: | |
return '759 - Unexpected T_PAAMAYIM_NEKUDOTAYIM'; | |
break; | |
case 761: | |
return '761 - Hungover'; | |
break; | |
case 762: | |
return '762 - Stoned'; | |
break; | |
case 763: | |
return '763 - Under-Caffeinated'; | |
break; | |
case 764: | |
return '764 - Over-Caffeinated'; | |
break; | |
case 765: | |
return '765 - Railscamp'; | |
break; | |
case 766: | |
return '766 - Sober'; | |
break; | |
case 767: | |
return '767 - Drunk'; | |
break; | |
case 768: | |
return '768 - Accidentally Took Sleeping Pills Instead Of Migraine Pills During Crunch Week'; | |
break; | |
case 769: | |
return '769 - Questionable Maturity Level'; | |
break; | |
case 771: | |
return '771 - Cached for too long'; | |
break; | |
case 772: | |
return '772 - Not cached long enough'; | |
break; | |
case 773: | |
return '773 - Not cached at all'; | |
break; | |
case 774: | |
return '774 - Why was this cached?'; | |
break; | |
case 775: | |
return '775 - Out of cash'; | |
break; | |
case 776: | |
return '776 - Error on the Exception'; | |
break; | |
case 777: | |
return '777 - Coincidence'; | |
break; | |
case 778: | |
return '778 - Off By One Error'; | |
break; | |
case 779: | |
return '779 - Off By Too Many To Count Error'; | |
break; | |
case 780: | |
return '780 - Project owner not responding'; | |
break; | |
case 781: | |
return '781 - Operations'; | |
break; | |
case 782: | |
return '782 - QA'; | |
break; | |
case 783: | |
return '783 - It was a customer request, honestly'; | |
break; | |
case 784: | |
return '784 - Management, obviously'; | |
break; | |
case 785: | |
return '785 - TPS Cover Sheet not attached'; | |
break; | |
case 786: | |
return '786 - Try it now'; | |
break; | |
case 787: | |
return '787 - Further Funding Required'; | |
break; | |
case 788: | |
return '788 - Designer\'s final designs weren\'t'; | |
break; | |
case 789: | |
return '789 - Not my department'; | |
break; | |
case 791: | |
return '791 - The Internet shut down due to copyright restrictions'; | |
break; | |
case 792: | |
return '792 - Climate change driven catastrophic weather event'; | |
break; | |
case 793: | |
return '793 - Zombie Apocalypse'; | |
break; | |
case 794: | |
return '794 - Someone let PG near a REPL'; | |
break; | |
case 795: | |
return '795 - #heartbleed (see 705)'; | |
break; | |
case 797: | |
return '797 - This is the last page of the Internet. Go back'; | |
break; | |
case 799: | |
return '799 - End of the world'; | |
break; | |
// If there's nothing, return the code alone | |
default: | |
return $code; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment