Skip to content

Instantly share code, notes, and snippets.

@mkody
Last active May 5, 2016 20:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mkody/5ca93e554edf71943e44391b96051237 to your computer and use it in GitHub Desktop.
Save mkody/5ca93e554edf71943e44391b96051237 to your computer and use it in GitHub Desktop.
<?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