در یک درخواست Guzzle 7 که از گردانندهٔ cURL استفاده می‌کند، آرایهٔ گزینه‌های curl سطح پایین از ثابت‌های عددی CURLOPT در PHP به‌عنوان کلید استفاده می‌کند:

$options = [
    'curl' => [
        CURLOPT_PROXY => 'proxy.example',
        CURLOPT_PROXYPORT => 8080,
    ],
];

کلید بیرونی Guzzle یعنی 'curl' را داخل گیومه نگه دارید. CURLOPT_PROXY یا CURLOPT_PROXYPORT را داخل گیومه نگذارید. نوشتن 'CURLOPT_PROXY' یک رشتهٔ معمولی با همان نام می‌سازد؛ PHP آن را به مقدار عددی ثابت تبدیل نمی‌کند.

همین تفاوت هشدار curl_setopt_array را توضیح می‌دهد که می‌گوید کلیدها باید ثابت‌های CURLOPT یا عددهای صحیح معادل باشند. پیش از تغییر نشانی یا حساب پروکسی، شکل آرایه را بررسی کنید: آن هشدار دربارهٔ پیکربندی دستگیره است و مدرکی بر رد شدن اتصال از سوی پروکسی راه دور نیست.

وقتی به رفتار cURL سطح پایین نیازی نیست، گزینهٔ معمول درخواست Guzzle ساده‌تر است:

$options = [
    'proxy' => 'http://proxy.example:8080',
];

رابط مورد نظر را انتخاب کنید و نوع کلیدهای آن را یکدست نگه دارید. وقتی این شکل معتبر است، یک ورودی HTTP از فهرست پروکسی HTTP می‌تواند نقطهٔ پایانی درخواست مجاز به یک نشانی عمومی را بدون حساب پروکسی فراهم کند. آرایهٔ curl سطح پایین به گردانندهٔ cURL نیاز دارد؛ گردانندهٔ دیگر فقط به‌خاطر وجود این آرایه تبدیل به cURL نمی‌شود.

مقالات مرتبط