За последние 24 часа нас посетили 23889 программистов и 1665 роботов. Сейчас ищет 791 программист ...

cURL и изображение.

Тема в разделе "PHP для новичков", создана пользователем FerroDump, 29 янв 2017.

  1. FerroDump

    FerroDump Новичок

    С нами с:
    19 ноя 2016
    Сообщения:
    22
    Симпатии:
    0
    Здравствуйте!
    Как получить с помощью cUrl изображение, допустим, с этой ссылки: https://pp.vk.me/c837231/v837231875/c2/A0s3OP6_LM4.jpg

    При использовании file_get_contents($url) все оккей, но мне нужен curl.

    Вот функция, которую я использую:

    PHP:
    1.    static function cUrl (string $url, array $post = [])
    2.     {
    3.         $ch = curl_init($url);
    4.         $curl =
    5.         [
    6.             CURLOPT_HEADER => false,
    7.             CURLOPT_RETURNTRANSFER => true,
    8.             CURLOPT_BINARYTRANSFER => true,
    9.            
    10.             CURLOPT_POST => true,
    11.             CURLOPT_POSTFIELDS => $post,
    12.         ];
    13.        
    14.         curl_setopt_array($ch, $curl);
    15.         $output = curl_exec($ch);
    16.         curl_close($ch);
    17.        
    18.         return $output;
    19.     }
    на выходе получается это:

    HTML:
    1. <head><title>501 Not Implemented</title></head>
    2. <body bgcolor="white">
    3. <center><h1>501 Not Implemented</h1></center>
    4. <hr><center>nginx/0.3.33</center>
    5. </body>
    6. </html>
    7.  
     
  2. alexblack

    alexblack Старожил

    С нами с:
    20 янв 2016
    Сообщения:
    640
    Симпатии:
    381
    PHP:
    1. header("Content-Type: image/jpeg");
    2. $url = 'http://qnimate.com/wp-content/uploads/2014/03/images2.jpg'; //Рандомное изображение для примера
    3. $ch = curl_init();
    4. curl_setopt($ch, CURLOPT_URL, $url);
    5. curl_setopt($ch, CURLOPT_HEADER, false);
    6. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    7. $res = curl_exec($ch);
    8. curl_close($ch) ;
    9. echo $res;