使用php获取json

Kla*_*tro 21 php json

我需要从http://vortaro.us.to/ajax/epo/eng/ +'word'+"/?callback =?" 获取json数据 .工作实例(声誉不够)

我知道如何在javascript中做到这一点,但我需要我的php文件来获取这些数据,它需要是服务器端,谢谢我是新的我花了一整天时间试图解决这个问题.fopen和fread不工作,

<?php
$vorto = $_GET['vorto']; // Get the Word from Outer Space and Search for it!

if (isset($vorto))
    {
    echo $vorto;
    } else {
        $Help = "No Vorto -> add ?vorto=TheWordYouWant to the end of this website";
        echo $Help;
    }
$url1 = "http://vortaro.us.to/ajax/epo/eng/"; 
$url2 = "/?callback=?";
$finalurl= $url1 . $vorto . $url2;

/*
PLEASE HELP

$v1 = fopen($finalurl ,"r");
echo $v1;


$frv1 = fread($v1,filesize($v1));
echo $frv1 ;

*/

?>
Run Code Online (Sandbox Code Playgroud)

Ber*_*mus 60

file_get_contents()可用于URL.一种处理http页面下载的简单方便的方法.

完成后,您可以使用json_decode()将数据解析为有用的东西.

  • `$ data = json_decode(file_get_contents('http://sample.com/stuff.json'));` (16认同)
  • 使用curl要快得多,打印效果会更好.您可以设置超时缓存等.我永远不会将file_get_contents用于api-request //来源 - > Google:curl vs file_get_contents (2认同)

DrD*_*Dol 14

看看PHP Curl.

通过这个例子,您可以获得所有信息.

<?php
// create a new cURL resource
$ch = curl_init();

// set URL and other appropriate options
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_HEADER, 0);

// grab URL and pass it to the browser
curl_exec($ch);

// close cURL resource, and free up system resources
curl_close($ch);
?>
Run Code Online (Sandbox Code Playgroud)

确保在php.ini中启用PHP Curl.如果你想使用fopen设置,你的php.ini中的allow_url_fopen必须为'ON'.检查所有设置的phpinfo().

从PHP 5.2.0开始,函数json_decode是核心的一部分.