2014-01-25 3 views
2

Я пытаюсь получить тикер скрипт работает, но я получаю

Undefined переменной: http_response_header

ошибки. Я googled и узнал, что $ http_response_header является глобальным и встроен в php, то почему я получаю эту ошибку. Я использую wamp с установленным PHP 5.4. Вот мой код:

$url="https://data.mtgox.com/api/2/BTCCAD/money/ticker"; 
$json = @file_get_contents($url); 

//check for errors 
if (strpos($http_response_header[0], "200")) { 
    // On success, decode JSON 
    $data = json_decode($json); 

Благодаря Ахмар

+1

Где вы читаете, что '$ http_response_header' глобальна? – Fractaliste

+0

В документации четко указано, что '$ http_response_header' не является глобальным. http://www.php.net/manual/en/reserved.variables.httpresponseheader.php Я бы предложил использовать cURL, в любом случае. – Brad

+0

@Brad Я пытаюсь заставить этот тикер работать. Но он использует ответ HTTP-заголовка http://skybin.net/bitcoin-ticker-on-your-website/ –

ответ

1
$content = file_get_contents("https://data.mtgox.com/api/2/BTCCAD/money/ticker"); 

if(!empty($content)) 
{ 
    $data = json_decode($content); 

    if (json_last_error() !== JSON_ERROR_NONE) 
    { 
     die("incorrect data"); 
    } 
} 
1

Привет, если я понял, что вы хотели сделать. Я проверил приведенный ниже код в php 5.5

Попробуйте.

<?php 
    function get_contents() { 

     $url="https://data.mtgox.com/api/2/BTCCAD/money/ticker"; 
     $json = file_get_contents($url); 

     if(strpos($http_response_header[0], "200")){ 
     $data = json_decode($json); 
      //you return $data 
      //return $data; 

     var_dump($data); 
     } 

    } 

    get_contents(); // call the function 

, если вам не нравится с помощью этой функции:

$url="https://data.mtgox.com/api/2/BTCCAD/money/ticker"; 
     $json = file_get_contents($url); 
     if(strpos($http_response_header[0], "200")){ 
     $data = json_decode($json); 
     var_dump($data); 
     } 


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