Guzzles cURL-opsjonsnøkler er PHP-konstanter
Rett advarselen fra curl_setopt_array om opsjonsnøkler ved å bruke heltallskonstantene CURLOPT i Guzzles curl-opsjonsarray på lavt nivå.
I en Guzzle 7-forespørsel som bruker cURL-handleren, bruker curl-opsjonsarrayet på lavt nivå PHPs heltallskonstanter CURLOPT som nøkler:
$options = [
'curl' => [
CURLOPT_PROXY => 'proxy.example',
CURLOPT_PROXYPORT => 8080,
],
];
Behold den ytre Guzzle-nøkkelen 'curl' i anførselstegn. Ikke sett CURLOPT_PROXY eller CURLOPT_PROXYPORT i anførselstegn. Skriver du 'CURLOPT_PROXY', opprettes en vanlig streng med det navnet; PHP gjør den ikke om til konstantens numeriske verdi.
Denne forskjellen forklarer advarselen fra curl_setopt_array om at nøkler må være CURLOPT-konstanter eller tilsvarende heltall. Kontroller formen på arrayet før du endrer proxyadressen eller kontoen: advarselen handler om konfigurering av handleren, og er ikke bevis for at den eksterne proxyen avviste en tilkobling.
Når det ikke trengs cURL-atferd på lavt nivå, er Guzzles vanlige forespørselsalternativ enklere:
$options = [
'proxy' => 'http://proxy.example:8080',
];
Velg grensesnittet du har tenkt, og hold nøkkeltypene konsistente. Når formen er gyldig, kan en HTTP-oppføring fra HTTP-proxylisten gi endepunktet for en tillatt forespørsel til en offentlig URL uten proxykonto. Curl-arrayet på lavt nivå krever cURL-handleren; en annen handler blir ikke cURL bare fordi arrayet finnes.