* * For the full copyright and license information, please view * the LICENSE file that was distributed with this source code. */ namespace CodeIgniter\HTTP; /** * HTTP Method List */ class Method { /** * Safe: No * Idempotent: No * Cacheable: No * * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/CONNECT */ public const CONNECT = 'CONNECT'; /** * Safe: No * Idempotent: Yes * Cacheable: No * * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/DELETE */ public const DELETE = 'DELETE'; /** * Safe: Yes * Idempotent: Yes * Cacheable: Yes * * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/GET */ public const GET = 'GET'; /** * Safe: Yes * Idempotent: Yes * Cacheable: Yes * * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/HEAD */ public const HEAD = 'HEAD'; /** * Safe: Yes * Idempotent: Yes * Cacheable: No * * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/OPTIONS */ public const OPTIONS = 'OPTIONS'; /** * Safe: No * Idempotent: No * Cacheable: Only if freshness information is included * * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/PATCH */ public const PATCH = 'PATCH'; /** * Safe: No * Idempotent: No * Cacheable: Only if freshness information is included * * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/POST */ public const POST = 'POST'; /** * Safe: No * Idempotent: Yes * Cacheable: No * * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/PUT */ public const PUT = 'PUT'; /** * Safe: Yes * Idempotent: Yes * Cacheable: No * * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/TRACE */ public const TRACE = 'TRACE'; /** * Returns all HTTP methods. * * @return list */ public static function all(): array { return [ self::CONNECT, self::DELETE, self::GET, self::HEAD, self::OPTIONS, self::PATCH, self::POST, self::PUT, self::TRACE, ]; } }