Webmaster общности: Predpriemach.com | SearchEngines.bg

    Curl : Основни функции

    Автор: vik96

    Наскоро ми трябваше скрипт който да симулира логване на скрипт като потребител и да изпраща „POST“ заявки.Препоръчаха ми „библиотеката“ Curl и ми стана интересно какви са му възможностите.В този урок ще ви покажа основните неща на библиотеката.

    Винаги когато използваме Curl трябва да го инициализираме библиотеката с помощта на функцията curl_init:

    $data = curl_init();

    За да добавим опции към извличането на данни използваме curl_setopt();:

    bool curl_setopt ( resource $ch , int $option , mixed $value )

    С опцията CURLOPT_URL задаваме линк от който ще индексираме. Пример:

    <?
    $data = curl_init();
    $link = "http://web-tourist.net";
    curl_setopt($data, CURLOPT_URL, $link);
    ?>

    Една от главните функции без която не можем да индексираме информацията е curl_exec(). За да работи горният пример трябва да добавим Curl_exec:

    <?
    $data = curl_init();
    $link = "http://web-tourist.net";
    curl_setopt($data, CURLOPT_URL, $link);
    curl_exec($data);
    curl_close($data); // Слага край да $data.
    ?>

    Когато използваме тази библиотека задължително трябва да „затворим“ скрипта с Curl_close($promenlive);

    При горният код curl_exec ще върне резултат който няма да може да се присвоява на променлива, затова използваме опцията CURLOPT_RETURNTRANSFER:

    <?
    $data = curl_init();
    $link = "http://web-tourist.net";
    curl_setopt($data, CURLOPT_URL, $link);
    curl_setopt($data, RETURNTRANSFER, true);
    $info = curl_exec($data); //Присвояваме информацията от curl_exec на променливата $info
    curl_close($data); // Слага край да $data.
    echo $info;
    ?>

    Една от яките функции на CURL е изпращането на POST заявки. Първо трябва да декларираме ,че ще ползваме POST заявка с

    curl_setopt($data, CURLOPT_POST, 1);

    ,а съдържанието на полетата ги добавяме с CURLOPT_POSTFIELDS

    <?
    $data = curl_init();
    $link = "http://web-tourist.net";
    curl_setopt($data, CURLOPT_URL, $link);
    curl_setopt($data, RETURNTRANSFER, true);
    curl_setopt($data, CURLOPT_POST, 1);
    curl_setopt($data, CURLOPT_POSTFIELDS, "user=web-tourist&b=parola");
    $info = curl_exec($data); //Присвояваме информацията от curl_exec на променливата $info
    curl_close($data); // Слага край да $data.
    echo $info;
    ?>

    В горният пример изпращаме съдържанието на 2 полета (user с държание „web-tourist“ и парола „parola“).

    Оставете коментар