Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在url https中获取json_Php_Json_Url_Cakephp Helper - Fatal编程技术网

Php 如何在url https中获取json

Php 如何在url https中获取json,php,json,url,cakephp-helper,Php,Json,Url,Cakephp Helper,我想使用googleapis url获取时区ID。我希望这个url返回json响应,以便稍后对其进行解析,并在我的数据库中插入lat和long。当它不是谷歌地图url时工作正常,但当我在代码中使用这种url时,我出现了著名的“request_denied”错误: 如何从谷歌的url中获取json,我想从纬度、经度和时间戳中获取时区 我已尝试从URL获取包含文件内容的数据 $json_url = 'https://maps.googleapis.com/maps/api/timezone/jso

我想使用googleapis url获取时区ID。我希望这个url返回json响应,以便稍后对其进行解析,并在我的数据库中插入lat和long。当它不是谷歌地图url时工作正常,但当我在代码中使用这种url时,我出现了著名的“request_denied”错误:

如何从谷歌的url中获取json,我想从纬度、经度和时间戳中获取时区

我已尝试从URL获取包含文件内容的数据

$json_url = 'https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510&timestamp=1331766000&sensor=false';
$json = file_get_contents($json_url);
$obj = json_decode($json);
echo $obj->timeZoneId;
但它不起作用。它总是返回“状态”:“请求被拒绝” 谢谢,我有小费

更新

谢谢大家:)我登录了phpextention->php\u openssl并且 工作

试试这个,我想这可能会有帮助。问题在于json_解码


试试这个,我想这可能会有帮助。问题在于json_解码。

您忘记了url中的
s

$json_url = 'https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510&timestamp=1331766000&sensor=false';
$json = file_get_contents($json_url);
$obj = json_decode($json);
echo $obj->timeZoneId;

这在我的电脑上起作用。

您忘记了url中的
s

$json_url = 'https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510&timestamp=1331766000&sensor=false';
$json = file_get_contents($json_url);
$obj = json_decode($json);
echo $obj->timeZoneId;
这在我的电脑上起作用。

从以下位置更改您的url:

$json_url = 'http://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510&timestamp=1331766000&sensor=false';
为此:

$json_url = 'https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510&timestamp=1331766000&sensor=false';
使用http您收到的请求被拒绝。

更改您的url地址:

$json_url = 'http://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510&timestamp=1331766000&sensor=false';
为此:

$json_url = 'https://maps.googleapis.com/maps/api/timezone/json?location=39.6034810,-119.6822510&timestamp=1331766000&sensor=false';

使用httphttp您得到的请求被拒绝。

对于实际发生的事情,“它不工作”从来都不是一个恰当的描述。很简单,使用http您得到的是“请求被拒绝”。感谢所有:)我检查了php扩展->php\u openssl,它工作“它不工作”从来都不是对实际发生的事情的恰当描述。很简单,使用http您会得到“请求被拒绝”。感谢所有:)我检查了php扩展->php_openssl,它工作:(在pc上工作,但在主机上不工作):(:(在pc上工作,但在主机上不工作:(