"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como posso extrair cookies de uma resposta PHP Curl em uma variável?

Como posso extrair cookies de uma resposta PHP Curl em uma variável?

Postado em 2025-02-07
Navegar:314

How Can I Extract Cookies from a PHP Curl Response into a Variable?

recuperando cookies da resposta php curl em uma variável

, em vez de utilizar protocolos de comunicação convencionais como sabão ou descanso. Para facilitar a extração desses cookies em uma matriz estruturada sem recorrer a uma análise trabalhosa, a seguinte técnica pode ser empregada. Código:

$ ch = curl_init ('http://www.google.com/'); Curl_SESTOPT ($ CH, Curlopt_ReTurnTransfer, 1); // Recuperar cabeçalhos também Curl_SESTOPT ($ CH, Curlopt_Header, 1); $ resultado = curl_exec ($ ch);

para extrair os cookies da resposta, expressões regulares podem ser empregadas:
$ch = curl_init('http://www.google.com/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Retrieve headers too
curl_setopt($ch, CURLOPT_HEADER, 1);
$result = curl_exec($ch);
// Extrair cookies usando expressões regulares preg_match_all ('/^set-cookie: \ s*([^;]*)/mi', $ resultado, $ corresponde);

A matriz $ corresponde conterá todos os cookies encontrados na resposta. Para convertê -lo em um formato mais útil, cada string de cookie pode ser analisada em uma matriz usando parse_str:
$ch = curl_init('http://www.google.com/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Retrieve headers too
curl_setopt($ch, CURLOPT_HEADER, 1);
$result = curl_exec($ch);
$ cookies = array (); foreach ($ corresponde [1] como $ item) { parse_str ($ item, $ cookie); $ cookies = array_merge ($ cookies, $ cookie); }

finalmente, você pode acessar os cookies na matriz $ cookies. Essa abordagem extrai efetivamente os cookies da resposta do CLL sem a necessidade de análise complexa ou operações baseadas em arquivos.
            
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3