2017-01-31 7 views
0

Таким образом, цель моего кода - получить ответ от curl.Код, который отлично работает на локальном, но не на сервере

Вот эталонный метод

public function waybill($waybill, $courier) 
{ 
    $curl = curl_init(); 

    curl_setopt_array($curl, array(
     [Some CURLOPT here..] 
    )); 

    $response = curl_exec($curl); 
    $err = curl_error($curl); 

    curl_close($curl); 

    if ($err) { 
     return "cURL Error #:" . $err; 
    } else { 
     return $response; 
    } 
} 

И отсюда я вызываю метод

public function getWaybill($carrier, $tracking_number) 
{ 
    $waybill = $tracking_number; 
    $courier = strtolower($carrier); 

    $response = $this->helper->waybill($waybill, $courier); 
    $response = json_decode($response, true); 
    $response = $response['rajaongkir']['result']; 
    $response = $response['summary']['status']; 
    if (!empty($response)) { 
     return $response; 
    } else { 
     return "Invalid tracking data"; 
    } 
} 

В местной появляются «Неверные данные отслеживания», если ответ пуст, однако в сервере ничего не появляется.

+0

ошибка Turn отчетности и увидеть, что причина –

+0

Для целей отладки используйте 'error_reporting (E_ALL);'. Может быть, расширение curl отключено на вашем сервере? – SREagle

+0

Вы пытаетесь скрутить https-url? У вас установлены сертификаты правильно? – Gogol

ответ

0

Попробуйте создать еще одну страницу с только что это на него

<?php 
    if (in_array ('curl', get_loaded_extensions())) { 
    echo true; 
} 
else { 
    echo false; 
} 

Это позволит вам знать, если локон включен (if get_loaded_extensions() не отключена) ... Может быть ваш вопрос .. В противном случае старый

<?php phpinfo(); 

и поиск завиток будет работать тоже (если phpinfo разрешено на сервере)

Смежные вопросы