Last active
March 26, 2025 22:55
-
-
Save jason-napolitano/2275e1443205e2b937f59291298df3d2 to your computer and use it in GitHub Desktop.
A file that contains a ton of cool constants for PHP projects. Geared for the CodeIgniter framework, but it is not required.
This file contains hidden or 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 | |
/** | |
* -------------------------------------------------------------------------- | |
* Application Specific Constants | |
* -------------------------------------------------------------------------- | |
* | |
* The following constants are application specific. They cover items such as | |
* writable path values, HTTP status codes and more! | |
* | |
* @package Constants | |
* @author Jason Napolitano <[email protected]> | |
* @updated 03.25.2025 | |
* | |
* @license MIT License | |
* @version 2.0.0 | |
* @since 1.0.0 | |
*/ | |
// ---------------------------------------------------------------------------- | |
// DIRECTORY_SEPARATOR Aliased as _DS_ | |
define('_DS_', str_replace(DIRECTORY_SEPARATOR, '/', '\\')); | |
/** | |
* -------------------------------------------------------------------------- | |
* Client/Server HTTP status code constants | |
* -------------------------------------------------------------------------- | |
* | |
* These are the constants that you may use anywhere in the application for | |
* allowing easier, quick access to status codes. | |
*/ | |
// ---------------------------------------------------------------------------- | |
// HTTP Status Codes | |
const HTTP_CONTINUE = 100; | |
const HTTP_SWITCHING_PROTOCOLS = 101; | |
const HTTP_PROCESSING = 102; // RFC2518 | |
// ---------------------------------------------------------------------------- | |
// The request has succeeded | |
const HTTP_OK = 200; | |
// ---------------------------------------------------------------------------- | |
// The server successfully created a new resource | |
const HTTP_CREATED = 201; | |
const HTTP_ACCEPTED = 202; | |
const HTTP_NON_AUTHORITATIVE_INFORMATION = 203; | |
// ---------------------------------------------------------------------------- | |
// The server successfully processed the request, though no content is returned | |
const HTTP_NO_CONTENT = 204; | |
const HTTP_RESET_CONTENT = 205; | |
const HTTP_PARTIAL_CONTENT = 206; | |
const HTTP_MULTI_STATUS = 207; // RFC4918 | |
const HTTP_ALREADY_REPORTED = 208; // RFC5842 | |
const HTTP_IM_USED = 226; // RFC3229 | |
// ---------------------------------------------------------------------------- | |
// Redirection | |
const HTTP_MULTIPLE_CHOICES = 300; | |
const HTTP_MOVED_PERMANENTLY = 301; | |
const HTTP_FOUND = 302; | |
const HTTP_SEE_OTHER = 303; | |
// ---------------------------------------------------------------------------- | |
// The resource has not been modified since the last request | |
const HTTP_NOT_MODIFIED = 304; | |
const HTTP_USE_PROXY = 305; | |
const HTTP_RESERVED = 306; | |
const HTTP_TEMPORARY_REDIRECT = 307; | |
const HTTP_PERMANENTLY_REDIRECT = 308; // RFC7238 | |
// ---------------------------------------------------------------------------- | |
// The request cannot be fulfilled due to multiple errors | |
const HTTP_BAD_REQUEST = 400; | |
// ---------------------------------------------------------------------------- | |
// The user is unauthorized to access the requested resource | |
const HTTP_UNAUTHORIZED = 401; | |
const HTTP_PAYMENT_REQUIRED = 402; | |
// ---------------------------------------------------------------------------- | |
// The requested resource is unavailable at this present time | |
const HTTP_FORBIDDEN = 403; | |
// ---------------------------------------------------------------------------- | |
// The requested resource could not be found | |
const HTTP_NOT_FOUND = 404; | |
// ---------------------------------------------------------------------------- | |
// The request method is not supported by the following resource | |
const HTTP_METHOD_NOT_ALLOWED = 405; | |
// ---------------------------------------------------------------------------- | |
// The request was not acceptable | |
const HTTP_NOT_ACCEPTABLE = 406; | |
const HTTP_PROXY_AUTHENTICATION_REQUIRED = 407; | |
const HTTP_REQUEST_TIMEOUT = 408; | |
// ---------------------------------------------------------------------------- | |
// The request could not be completed due to a conflict with the current state | |
// of the resource | |
const HTTP_CONFLICT = 409; | |
const HTTP_GONE = 410; | |
const HTTP_LENGTH_REQUIRED = 411; | |
const HTTP_PRECONDITION_FAILED = 412; | |
const HTTP_REQUEST_ENTITY_TOO_LARGE = 413; | |
const HTTP_REQUEST_URI_TOO_LONG = 414; | |
const HTTP_UNSUPPORTED_MEDIA_TYPE = 415; | |
const HTTP_REQUESTED_RANGE_NOT_SATISFIABLE = 416; | |
const HTTP_EXPECTATION_FAILED = 417; | |
const HTTP_I_AM_A_TEAPOT = 418; // RFC2324 | |
const HTTP_UNPROCESSABLE_ENTITY = 422; // RFC4918 | |
const HTTP_LOCKED = 423; // RFC4918 | |
const HTTP_FAILED_DEPENDENCY = 424; // RFC4918 | |
const HTTP_RESERVED_FOR_WEBDAV_ADVANCED_COLLECTIONS_EXPIRED_PROPOSAL = 425; // RFC2817 | |
const HTTP_UPGRADE_REQUIRED = 426; // RFC2817 | |
const HTTP_PRECONDITION_REQUIRED = 428; // RFC6585 | |
const HTTP_TOO_MANY_REQUESTS = 429; // RFC6585 | |
const HTTP_REQUEST_HEADER_FIELDS_TOO_LARGE = 431; // RFC6585 | |
// ---------------------------------------------------------------------------- | |
// The server encountered an unexpected error | |
// Note: This is a generic error message when no specific message | |
// is suitable | |
const HTTP_INTERNAL_SERVER_ERROR = 500; | |
// ---------------------------------------------------------------------------- | |
// The server does not recognise the request method | |
const HTTP_NOT_IMPLEMENTED = 501; | |
const HTTP_BAD_GATEWAY = 502; | |
const HTTP_SERVICE_UNAVAILABLE = 503; | |
const HTTP_GATEWAY_TIMEOUT = 504; | |
const HTTP_VERSION_NOT_SUPPORTED = 505; | |
const HTTP_VARIANT_ALSO_NEGOTIATES_EXPERIMENTAL = 506; // RFC2295 | |
const HTTP_INSUFFICIENT_STORAGE = 507; // RFC4918 | |
const HTTP_LOOP_DETECTED = 508; // RFC5842 | |
const HTTP_NOT_EXTENDED = 510; // RFC2774 | |
const HTTP_NETWORK_AUTHENTICATION_REQUIRED = 511; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment