如何从url获取信息到变量

时间:2015-02-17 10:13:55

标签: php url reverse-geocoding

所以我正在尝试使用反向地理编码获取位置 https://developers.google.com/maps/documentation/geocoding/#ReverseGeocoding 所以我的问题是(因为我对php很新)如何从URL获取结果参数(结果将是json编码数据)

2 个答案:

答案 0 :(得分:0)

您可以使用 file_get_contents 功能从网址获取数据

    $API_KEY ="XXXXXXX";
    $url = "http://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&key=".$API_KEY;
    $data = @file_get_contents($url);
    $jsondata = json_decode($data,true);
    if(is_array($jsondata) && $jsondata['status'] == "OK")
    {
         echo '<pre>'; print_r($jsondata);echo '</pre>';
    }

答案 1 :(得分:0)

要获取数据,我们使用PHP curl函数。

[PHP]

// jSON URL which should be requested
$json_url = ‘www.yourdomain.com';

$username = ‘your_username';  // authentication
$password = ‘your_password';  // authentication

// jSON String for request
$json_string = ‘[your json string here]';

// Initializing curl
$ch = curl_init( $json_url );

// Configuring curl options
$options = array(
CURLOPT_RETURNTRANSFER => true,
CURLOPT_USERPWD => $username . “:” . $password,  // authentication
CURLOPT_HTTPHEADER => array(‘Content-type: application/json’) ,
CURLOPT_POSTFIELDS => $json_string
);

// Setting curl options
curl_setopt_array( $ch, $options );

// Getting results
$result = curl_exec($ch); // Getting jSON result string

[/ PHP]

结果将是一个jSON字符串。

通常,您必须将jSON字符串发送到jSON URL,然后您将获得一个jSON字符串。要对数据进行编码,只需使用php jSON函数即可。使用json_encode从PHP数组创建一个json字符串,并使用json_decode将jSON字符串转换为PHP数组。