verdad sobre salud peligroso nuevos nueva normal mentira maximo gran estudios cual colesterol php http header http-status-codes

php - salud - la verdad sobre el colesterol pdf



Analizar código de estado HTTP (4)

Estoy usando PHP para analizar la parte numérica de la respuesta del código de estado HTTP. Dada una respuesta estándar "HTTP / 1.1 200 OK", usaría:

$data = explode('' '', "HTTP/1.1 200 OK"); $code = $data[1];

No soy un experto en HTTP. ¿Alguna vez encontraría una respuesta donde el código no está en la posición de $ data [1] como en el ejemplo anterior? Solo quiero asegurarme de que este método de delimitación del código de respuesta siempre funcione para cualquier respuesta.

Gracias, Brian


En caso de duda, verifique las especificaciones. La especificación en este caso, para HTTP / 1.1, es RFC2616 . En la Sección 6.1 , describe la línea de estado , el primer componente de una respuesta , como:

Status-Line = HTTP-Version SP Status-Code SP Reason-Phrase CRLF

Es decir, un único espacio ASCII ( SP ) debe separar la Versión HTTP y el Código de estado , y si verifica la definición de la Versión HTTP (en la Sección 3.1 ) no puede incluir un espacio, y tampoco el Código de estado .

Entonces eres bueno para ir con ese código.


No, lo que estás haciendo está bien si todo lo que quieres es numérico. Si también quiere el mensaje, terminará dividiéndolo también, es decir.

HTTP/1.1 404 Not Found


No, nunca encontrará una respuesta (si es una respuesta HTTP adecuada) que tiene un formato diferente. Ver el HTTP RFC (2616) .


No, si el servidor web respeta los estándares haciendo una explosión y el almacenamiento en caché del segundo elemento de la matriz está bien

si realmente quieres estar seguro usa una expresión regular

es decir

preg_match(''|HTTP//d/./d/s+(/d+)/s+.*|'',$subject,$match); var_dump($match[1]);

Aclamaciones