"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo enviar múltiples cookies con file_get_contents en PHP?

¿Cómo enviar múltiples cookies con file_get_contents en PHP?

Publicado el 2024-10-31
Navegar:798

How to Send Multiple Cookies with file_get_contents in PHP?

Envío de múltiples cookies con file_get_contents

El manual de PHP proporciona un ejemplo que demuestra cómo enviar una cookie utilizando contextos de transmisión. Sin embargo, no aborda el escenario de envío de múltiples cookies.

Múltiples opciones de cookies

Hay varias opciones para enviar múltiples cookies:

  • Opción 1:
"Cookie: user=3345&pass=abcd\r\n"

Esta opción combina las cookies en una sola cadena, separada por un signo comercial (&). Sin embargo, es posible que no sea compatible con todos los servidores.

  • Opción 2:
"Cookie: user=3345\r\n" . 
"Cookie: pass=abcd\r\n"

Esta opción envía las cookies como líneas separadas con encabezados de cookies individuales. Proporciona una mejor compatibilidad, pero puede parecer desordenado.

Solución óptima

La opción preferida para enviar múltiples cookies es:

  • Opción 3:
Cookie: user=3345; pass=abcd

Esta sintaxis utiliza punto y coma (;) para separar los pares de cookies. Tiene un amplio soporte y sigue la especificación de cookies HTTP.

Implementación

Para enviar múltiples cookies usando file_get_contents:

$cookies = array('user' => '3345', 'pass' => 'abcd');
$cookieString = '';
foreach ($cookies as $name => $value) {
    $cookieString .= "$name=$value;";
}

$opts = array(
  'http' => array(
    'method' => 'GET',
    'header' => "Accept-language: en\r\n" .
              "Cookie: $cookieString\r\n"
  )
);

$context = stream_context_create($opts);
$file = file_get_contents('http://www.example.com/', false, $context);
Declaración de liberación Este artículo se reimprime en: 1729212137 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3