Приклад curl-запиту на php

Я знаю досить багато прикладів, де для отримання сторонніх web-сторінок (парсери) використовувалися зовсім інші способи. відмінні від cURL. наприклад:

Чому розробники використовували їх і що в них не так? А тому, що не знали, або не хотіли знати, що таке cURL. А не так в них те, що функціонал обмежений. отримали сторінку і все на цьому, в той час, як cURL може відправити форму на сторінці, отримати відповідь, обробити помилку, почати все занова і т.д.

При використанні cURL-запитів існує 4 основні кроки, які повинні (зобов'язані) бути у вашому скрипті, це:

  • ініціалізація
  • призначення параметрів
  • Виконання і вибірка результату
  • звільнення пам'яті

Без будь-якого з цих кроків ваш скрипт приречений на невдачу. Отже, основні кроки:

Думаю що всі кроки вам зрозумілі за винятком другого: "Вказівки параметрів". На цьому кроці ми зупинимося більш детально, тому що саме він задає всі необхідні настройки / параметри / методи.

Щоб не навантажувати сервер подальшими обчислень, завжди перевіряйте результат виконання функції curl_exec:

Зазначу, що знак порівняння тут '===', а не '==', тобто порівнюється саме на наявність логічного FALSE, а не порожнього рядка або рядка 'false'.

Ну а після того, як CURL-запит був виконаний, непогано б було знати, що він повернув:

А ось які ще дані ми можемо отримати:

Давайте напишемо наш перший скрипт, який відправить дані методом POST на якусь сторінку і подивиться, що відобразилося на цій сторінці.

Тепер спробуємо передати туди якісь дані:

Результат можна подивитися тут: curl_post.php

Сенс тут абсолютно такий же, як і в запиті POST.

Тепер спробуємо передати туди якісь дані:

Результат можна подивитися тут: curl_post_file.php

Завантаження файлу - це той же самий POST-запит, однак перед шляхом до файлу стоїть знак "@", що і позначає, що потрібно це передати не як $ _POST, а як $ _FILES.

Досить корисна штука.

Схожі статті