Що таке CURL в PHP?


220

У PHP я бачу слово cURL у багатьох проектах PHP. Що це? Як це працює?

Посилання: cURL



1
Перевірте нижче 2 посилання, я думаю, це допоможе вам зрозуміти, що таке CURL. phpsense.com/2007/php-curl-functions blog.unitedheroes.net/curl
Дхаваль

Відповіді:


245

cURL - це бібліотека, яка дозволяє робити запити HTTP в PHP. Все, що потрібно знати про це (та більшість інших розширень), можна знайти в посібнику PHP .

Для використання функцій cURL PHP потрібно встановити пакет »libcurl. PHP вимагає використання libcurl 7.0.2-beta або вище. У PHP 4.2.3 вам знадобиться libcurl версії 7.9.0 або новішої. З PHP 4.3.0 вам знадобиться версія libcurl, що становить 7.9.8 або вище. Для PHP 5.0.0 потрібна версія libcurl версії 7.10.5 або новішої.

Ви також можете робити HTTP-запити без CURL, хоча це потрібно allow_url_fopenввімкнути у вашому php.iniфайлі.

// Make a HTTP GET request and print it (requires allow_url_fopen to be enabled)
print file_get_contents('http://www.example.com/');

1
@Johannes, Чи можливі запити HTTP-пошти без курсу CURL?
Pacerier

2
це означає, що якщо на сервері "enable_url_fopen" не ввімкнено, ми не могли б використовувати функцію file_get_contents (), але в такому випадку ми можемо використовувати функцію curl з тією ж метою? я прав?
АРУН

3
@Arun Так, якщо "enable_url_fopen" не ввімкнено, ви можете використовувати curl для того ж завдання замість fun_get_contents () func. Curl дозволяє встановити більше параметрів, таких як дані POST, файли cookie тощо, які file_get_contents () не надає.
Дінеш Нагар

157

cURL - це спосіб потрапити на URL з коду, щоб отримати відповідь у форматі HTML. cURL означає клієнтську URL-адресу, яка дозволяє вам з'єднуватися з іншими URL-адресами та використовувати їх відповіді у своєму коді.


3
у Javascript це так само, як ви робите Ajax у своєму коді. Різні речі з PHP ви робите синхронно, тоді як у Javascript ви робите асинхронно.
Фаріс Райхан

68

CURL в PHP:

Підсумок:

curl_execКоманда в РНР є мостом для використанняcurl з консолі. curl_exec дозволяє легко та швидко робити запити GET / POST, отримувати відповіді з інших серверів, таких як JSON, та завантажувати файли.

Попередження, небезпека:

curlце зло і небезпечно при неправильному використанні, оскільки мова йде про отримання даних з Інтернету. Хтось може потрапити між вашим завитком та іншим сервером та ввести відповідь rm -rf /у вашу відповідь, і тоді чому я перейшов на консоль і ls -lнавіть більше не працює? Тому що ви неправильно занижували небезпечну силу завитка. Не довіряйте чомусь безпечному, навіть якщо ви спілкуєтесь із власними серверами. Ви можете відтягувати шкідливі програми, щоб позбавити дурнів від їх багатства.

Приклади:

Це було зроблено на Ubuntu 12.10

  1. Основний згортання з командного рядка:

    el@apollo:/home/el$ curl http://i.imgur.com/4rBHtSm.gif > mycat.gif
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100  492k  100  492k    0     0  1077k      0 --:--:-- --:--:-- --:--:-- 1240k

    Тоді ви можете відкрити свій gif у firefox:

    firefox mycat.gif

    Славні коти, що розвиваються Toxoplasma gondii, змушують жінок тримати кішок навколо, а чоловіків - так само, щоб тримати жінок навколо.

  2. Приклад cURL отримати запит на потрапляння на google.com, відлуння до командного рядка:

    Це робиться через термінал phpsh:

    php> $ch = curl_init();
    
    php> curl_setopt($ch, CURLOPT_URL, 'http://www.google.com');
    
    php> curl_exec($ch);

    Який друкує та скидає безлад з конденсованого html та javascript (від google) на консоль.

  3. Приклад cURL помістить текст відповіді у змінну:

    Це робиться через термінал phpsh:

    php> $ch = curl_init();
    
    php> curl_setopt($ch, CURLOPT_URL, 'http://i.imgur.com/wtQ6yZR.gif');
    
    php> curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    
    php> $contents = curl_exec($ch);
    
    php> echo $contents;

    Змінна тепер містить двійкове, яке є анімований gif кота, можливості нескінченні.

  4. Зробіть скручування з файлу PHP:

    Помістіть цей код у файл під назвою myphp.php:

    <?php
      $curl_handle=curl_init();
      curl_setopt($curl_handle,CURLOPT_URL,'http://www.google.com');
      curl_setopt($curl_handle,CURLOPT_CONNECTTIMEOUT,2);
      curl_setopt($curl_handle,CURLOPT_RETURNTRANSFER,1);
      $buffer = curl_exec($curl_handle);
      curl_close($curl_handle);
      if (empty($buffer)){
          print "Nothing returned from url.<p>";
      }
      else{
          print $buffer;
      }
    ?>

    Потім запустіть його за допомогою командного рядка:

    php < myphp.php

    Ви запустили myphp.php і виконали ці команди через інтерпретатор php і скинули на екран багато брудних html та javascript.

    Ви можете робити GETі POSTзапити за допомогою curl. Все, що вам потрібно зробити, це вказати параметри, визначені тут: Використання curl для автоматизації HTTP-завдань

Нагадування про небезпеку:

Будьте уважні, демпінговий вихід з завитками, якщо будь-який з них буде інтерпретований та виконаний, ваша коробка належить, а інформація про вашу кредитну карту буде продана третім сторонам, і ви отримаєте загадкове стягнення в розмірі 900 доларів від компанії, що займається паркетною підлогою в Алабамі, фронт для кільця злочину шахрайства з обманом на кредитних картках


2
Чи можете ви надати посилання, що створює резервну копію "небезпеки", яку ви згадуєте тут?
плаваючий

1
@floatingLomas Те, що Ерік намагається пояснити, - це проблема, яка існує у всьому наданому користувачем вмісті: Ви нікому не можете довіряти. Як і у наданому користувачем вмісті, можна використовувати CURL за допомогою простого MITM для введення шкідливого коду у вашу програму. Звичайно, це лише проблема, якщо її "інтерпретують та виконують", як Ерік констатував правильно. Просто шукати Eval є зло , і ви знайдете безліч можливих загроз безпеки (наприклад , stackoverflow.com/questions/951373/when-is-eval-evil-in-php )
Фабіо Poloni

7
@floatingLomas ... Крім того, Ерік, схоже, має параною про компанії, що займаються підлогою в Алабамі, які стягують з нього 900 доларів.
Фабіо Полоні

Чи є альтернатива, крім iframe?
Дженніфер Мішель

1
Не параноя, якщо вони справді продаються вам підлоги.
пристань

24

cURL - це спосіб потрапити на URL з коду, щоб отримати від нього HTML-відповідь. Він використовується для командного рядка cURL з мови PHP.

<?php
// Step 1
$cSession = curl_init(); 
// Step 2
curl_setopt($cSession,CURLOPT_URL,"http://www.google.com/search?q=curl");
curl_setopt($cSession,CURLOPT_RETURNTRANSFER,true);
curl_setopt($cSession,CURLOPT_HEADER, false); 
// Step 3
$result=curl_exec($cSession);
// Step 4
curl_close($cSession);
// Step 5
echo $result;
?> 

Крок 1: Ініціалізуйте сеанс згортання за допомогою curl_init().

Крок 2: Установіть параметр для CURLOPT_URL. Це значення - це URL-адреса, до якої ми надсилаємо запит. Додайте пошуковий термін curlза допомогою параметра q=. Встановити варіант для CURLOPT_RETURNTRANSFER. Правда скаже curl повернути рядок, а не роздрукувати її. Встановити параметр для CURLOPT_HEADER, false підкаже curl ігнорувати заголовок у зворотному значенні.

Крок 3: Виконайте сеанс curl за допомогою curl_exec().

Крок 4: Закрийте створений нами сеанс завивки.

Крок 5: Виведіть зворотний рядок.

public function curlCall($apiurl, $auth, $rflag)
{
    $ch = curl_init($apiurl);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

    if($auth == 'auth') { 
        curl_setopt($ch, CURLOPT_USERPWD, "passw:passw");
    } else {
        curl_setopt($ch, CURLOPT_USERPWD, "ss:ss1");
    }
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $dt = curl_exec($ch);        
    curl_close($ch);
    if($rflag != 1) {
        $dt = json_decode($dt,true);        
    }
    return $dt;
}

Це також використовується для аутентифікації. Ми також можемо встановити ім'я користувача та пароль для аутентифікації.

Для отримання додаткових функцій див. Посібник користувача або наступний підручник:

http://php.net/manual/en/ref.curl.php
http://www.startutorial.com/articles/view/php-curl


16

Спочатку давайте розберемося з поняттям curl, libcurl та PHP / cURL.

  1. curl : інструмент командного рядка для отримання або надсилання файлів за допомогою синтаксису URL.

  2. libcurl : бібліотека, створена Даніелем Стенбергом, яка дозволяє підключати та спілкуватися з багатьма різними типами серверів з багатьма різними типами протоколів. На даний момент libcurl підтримує протоколи http, https, ftp, gopher, telnet, dict, file та ldap. libcurl також підтримує сертифікати HTTPS, HTTP POST, HTTP PUT, завантаження FTP (це також можна зробити за допомогою ftp-розширення PHP), завантаження на основі форми HTTP, проксі-сервери, файли cookie та автентифікацію користувача + паролем.

  3. PHP / cURL : Модуль для PHP, що дозволяє програмам PHP використовувати libcurl.

Як ним користуватися:

step1 : Ініціалізуйте сеанс curl за допомогою curl_init ().

крок 2 : встановіть параметр для CURLOPT_URL. Це значення - це URL-адреса, на яку ми надсилаємо запит. Додайте пошуковий термін "curl" за допомогою параметра "q =". Встановіть параметр CURLOPT_RETURNTRANSFER, true скаже curl повернути рядок, а не роздрукувати її. Встановіть опцію для CURLOPT_HEADER, помилка підкаже curl ігнорувати заголовок у зворотному значенні.

stepp3 : Виконати сеанс curl за допомогою curl_exec ().

крок 4 : Закрийте створений нами сеанс завивки.

step5 : Вивести зворотний рядок.

Зробіть DEMO :

Вам потрібно буде створити два файли PHP і помістити їх у папку, з якої ваш веб-сервер може обслуговувати файли PHP. У моєму випадку я ставлю їх у / var / www / для простоти.

1. helloservice.php і 2. demo.php

helloservice.php дуже простий і по суті просто повторює всі отримані дані:

<?php
  // Here is the data we will be sending to the service
  $some_data = array(
    'message' => 'Hello World', 
    'name' => 'Anand'
  );  

  $curl = curl_init();
  // You can also set the URL you want to communicate with by doing this:
  // $curl = curl_init('http://localhost/echoservice');

  // We POST the data
  curl_setopt($curl, CURLOPT_POST, 1);
  // Set the url path we want to call
  curl_setopt($curl, CURLOPT_URL, 'http://localhost/demo.php');  
  // Make it so the data coming back is put into a string
  curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
  // Insert the data
  curl_setopt($curl, CURLOPT_POSTFIELDS, $some_data);

  // You can also bunch the above commands into an array if you choose using: curl_setopt_array

  // Send the request
  $result = curl_exec($curl);

  // Get some cURL session information back
  $info = curl_getinfo($curl);  
  echo 'content type: ' . $info['content_type'] . '<br />';
  echo 'http code: ' . $info['http_code'] . '<br />';

  // Free up the resources $curl is using
  curl_close($curl);

  echo $result;
?>

2.demo.php , ви можете побачити результат:

<?php 
   print_r($_POST);
   //content type: text/html; charset=UTF-8
   //http code: 200
   //Array ( [message] => Hello World [name] => Anand )
?>

Привіт, НЕ могли б ви розповісти мені про сторінку 1. використовуючи-curl.php
Каве

@Kaveh: вибачте, я забув другу сторінку. Оновлена ​​відповідь. Тепер перевірте.
Ананд Пандей

12

Розширення CURL до PHP розроблено так, щоб ви могли використовувати різноманітні веб-ресурси з вашого сценарію PHP.



7

CURL

  • cURL - це спосіб потрапити на URL з коду, щоб отримати від нього HTML-відповідь.
  • Він використовується для командного рядка cURL з мови PHP.
  • cURL - це бібліотека, яка дозволяє робити запити HTTP в PHP.

PHP підтримує libcurl, бібліотеку, створену Даніелем Стенбергом, яка дозволяє підключати та спілкуватися з багатьма різними типами серверів з багатьма різними типами протоколів. На даний момент libcurl підтримує протоколи http, https, ftp, gopher, telnet, dict, file та ldap. libcurl також підтримує сертифікати HTTPS, HTTP POST, HTTP PUT, завантаження FTP (це також можна зробити за допомогою ftp розширення PHP), завантаження на основі HTTP форми, проксі, cookie та автентифікацію пароля + користувача.

Після компіляції PHP з підтримкою cURL ви можете приступити до використання функцій cURL. Основна ідея функцій cURL полягає в тому, що ви ініціалізуєте сеанс cURL за допомогою curl_init (), потім ви можете встановити всі свої варіанти передачі за допомогою curl_setopt (), потім ви можете виконати сеанс за допомогою curl_exec (), а потім ви закінчіть сеанс, використовуючи curl_close ().

Зразок коду

// error reporting
error_reporting(E_ALL);
ini_set("display_errors", 1);

//setting url
$url = 'http://example.com/api';

//data
$data = array("message" => "Hello World!!!");

try {
    $ch = curl_init($url);
    $data_string = json_encode($data);

    if (FALSE === $ch)
        throw new Exception('failed to initialize');

        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, false);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
        curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Content-Length: ' . strlen($data_string)));
        curl_setopt($ch, CURLOPT_TIMEOUT, 5);
        curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);

        $output = curl_exec($ch);

    if (FALSE === $output)
        throw new Exception(curl_error($ch), curl_errno($ch));

    // ...process $output now
} catch(Exception $e) {

    trigger_error(sprintf(
        'Curl failed with error #%d: %s',
        $e->getCode(), $e->getMessage()),
        E_USER_ERROR);
}

Для отримання додаткової інформації, будь ласка, перевірте -


1

Curl - це не що інше, як розширення PHP, яке успадковує поведінку звичайних команд і бібліотеки curl, написаних головним чином для інструменту командного рядка Linux / Unix

Що таке Curl? CURL стенд для клієнтської URL-адреси. CURL використовується для надсилання даних на будь-яку URL-адресу. Більш детально про те, що саме завиток, ви можете відвідати веб-сайт CURL

CURL в PHP Тепер те саме поняття введено в PHP, щоб надсилати дані до будь-якої доступної URL-адреси через інший протокол, наприклад, HTTP або FTP. Для отримання більш детальної інформації ви можете ознайомитись з Підручником з Curl PHP


1

Функція завивки Php (POST, GET, DELETE, PUT)

function curl($post = array(), $url, $token = '', $method = "POST", $json = false, $ssl = true){
    $ch = curl_init();  
    curl_setopt($ch, CURLOPT_URL, $url);    
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method);
    if($method == 'POST'){
        curl_setopt($ch, CURLOPT_POST, 1);
    }
    if($json == true){
        curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
        curl_setopt($ch, CURLOPT_HTTPHEADER, array(
            'Content-Type: application/json','Authorization: Bearer '.$token,'Content-Length: ' . strlen($post)));
    }else{
        curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));
        curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded'));
    }
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_SSLVERSION, 6);
    if($ssl == false){
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    }
    // curl_setopt($ch, CURLOPT_HEADER, 0);     
    $r = curl_exec($ch);    
    if (curl_error($ch)) {
        $statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
        $err = curl_error($ch);
        print_r('Error: ' . $err . ' Status: ' . $statusCode);
        // Add error
        $this->error = $err;
    }
    curl_close($ch);
    return $r;
}

0

Клас завивки Php (GET, POST, FILES UPLOAD, SESSIONS, SEND POST JSON, FORCE SELFSIGNED SSL / TLS):

<?php
    // Php curl class
    class Curl {

        public $error;

        function __construct() {}

        function Get($url = "http://hostname.x/api.php?q=jabadoo&txt=gin", $forceSsl = false,$cookie = "", $session = true){
            // $url = $url . "?". http_build_query($data);
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_HEADER, false);        
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_TIMEOUT, 60);
            curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
            if($session){
                curl_setopt($ch, CURLOPT_COOKIESESSION, true );
                curl_setopt($ch , CURLOPT_COOKIEJAR, 'cookies.txt');
                curl_setopt($ch , CURLOPT_COOKIEFILE, 'cookies.txt');
            }
            if($forceSsl){
                curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
                curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); // 1, 2
            }
            if(!empty($cookie)){            
                curl_setopt($ch, CURLOPT_COOKIE, $cookie); // "token=12345"
            }
            $info = curl_getinfo($ch);
            $res = curl_exec($ch);        
            if (curl_error($ch)) {
                $this->error = curl_error($ch);
                throw new Exception($this->error);
            }else{
                curl_close($ch);
                return $res;
            }        
        }

        function GetArray($url = "http://hostname.x/api.php", $data = array("name" => "Max", "age" => "36"), $forceSsl = false, $cookie = "", $session = true){
            $url = $url . "?". http_build_query($data);
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_HEADER, false);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_TIMEOUT, 60);
            curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
            if($session){
                curl_setopt($ch, CURLOPT_COOKIESESSION, true );
                curl_setopt($ch , CURLOPT_COOKIEJAR, 'cookies.txt');
                curl_setopt($ch , CURLOPT_COOKIEFILE, 'cookies.txt');
            }
            if($forceSsl){
                curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
                curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); // 1, 2
            }
            if(!empty($cookie)){
                curl_setopt($ch, CURLOPT_COOKIE, $cookie); // "token=12345"
            }
            $info = curl_getinfo($ch);
            $res = curl_exec($ch);        
            if (curl_error($ch)) {
                $this->error = curl_error($ch);
                throw new Exception($this->error);
            }else{
                curl_close($ch);
                return $res;
            }        
        }

        function PostJson($url = "http://hostname.x/api.php", $data = array("name" => "Max", "age" => "36"), $forceSsl = false, $cookie = "", $session = true){
            $data = json_encode($data);
            $ch = curl_init($url);                                                                      
            curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
            curl_setopt($ch, CURLOPT_POST, 1);
            curl_setopt($ch, CURLOPT_POSTFIELDS, $data);                                                                  
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_TIMEOUT, 60);
            curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
            if($session){
                curl_setopt($ch, CURLOPT_COOKIESESSION, true );
                curl_setopt($ch , CURLOPT_COOKIEJAR, 'cookies.txt');
                curl_setopt($ch , CURLOPT_COOKIEFILE, 'cookies.txt');
            }
            if($forceSsl){
                curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
                curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); // 1, 2
            }
            if(!empty($cookie)){
                curl_setopt($ch, CURLOPT_COOKIE, $cookie); // "token=12345"
            }
            curl_setopt($ch, CURLOPT_HTTPHEADER, array(
                'Authorization: Bearer helo29dasd8asd6asnav7ffa',                                                      
                'Content-Type: application/json',                                                                                
                'Content-Length: ' . strlen($data))                                                                       
            );        
            $res = curl_exec($ch);
            if (curl_error($ch)) {
                $this->error = curl_error($ch);
                throw new Exception($this->error);
            }else{
                curl_close($ch);
                return $res;
            } 
        }

        function Post($url = "http://hostname.x/api.php", $data = array("name" => "Max", "age" => "36"), $files = array('ads/ads0.jpg', 'ads/ads1.jpg'), $forceSsl = false, $cookie = "", $session = true){
            foreach ($files as $k => $v) {
                $f = realpath($v);
                if(file_exists($f)){
                    $fc = new CurlFile($f, mime_content_type($f), basename($f)); 
                    $data["file[".$k."]"] = $fc;
                }
            }
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($ch, CURLOPT_POST, 1);
            curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");        
            curl_setopt($ch, CURLOPT_POSTFIELDS, $data);    
            curl_setopt($ch, CURLOPT_SAFE_UPLOAD, false); // !!!! required as of PHP 5.6.0 for files !!!
            curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-GB; rv:1.9.2) Gecko/20100115 Firefox/3.6 (.NET CLR 3.5.30729)");
            curl_setopt($ch, CURLOPT_TIMEOUT, 60);
            curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
            if($session){
                curl_setopt($ch, CURLOPT_COOKIESESSION, true );
                curl_setopt($ch , CURLOPT_COOKIEJAR, 'cookies.txt');
                curl_setopt($ch , CURLOPT_COOKIEFILE, 'cookies.txt');
            }
            if($forceSsl){
                curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
                curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); // 1, 2
            }
            if(!empty($cookie)){
                curl_setopt($ch, CURLOPT_COOKIE, $cookie); // "token=12345"
            }
            $res = curl_exec($ch);
            if (curl_error($ch)) {
                $this->error = curl_error($ch);
                throw new Exception($this->error);
            }else{
                curl_close($ch);
                return $res;
            } 
        }
    }
?>

Приклад:

<?php
    $urlget = "http://hostname.x/api.php?id=123&user=bax";
    $url = "http://hostname.x/api.php";
    $data = array("name" => "Max", "age" => "36");
    $files = array('ads/ads0.jpg', 'ads/ads1.jpg');

    $curl = new Curl();
    echo $curl->Get($urlget, true, "token=12345");
    echo $curl->GetArray($url, $data, true);
    echo $curl->Post($url, $data, $files, true);
    echo $curl->PostJson($url, $data, true);
?>

Файл PHP: api.php

<?php
    /*
    $Cookie = session_get_cookie_params();
    print_r($Cookie);
    */
    session_set_cookie_params(9000, '/', 'hostname.x', isset($_SERVER["HTTPS"]), true);
    session_start();

    $_SESSION['cnt']++;
    echo "Session count: " . $_SESSION['cnt']. "\r\n";
    echo $json = file_get_contents('php://input');
    $arr = json_decode($json, true);
    echo "<pre>";
    if(!empty($json)){ print_r($arr); }
    if(!empty($_GET)){ print_r($_GET); }
    if(!empty($_POST)){ print_r($_POST); }
    if(!empty($_FILES)){ print_r($_FILES); }
    // request headers
    print_r(getallheaders());
    print_r(apache_response_headers());
    // Fetch a list of headers to be sent.
    // print_r(headers_list());
?>
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.