php - 从外部页面获取特定变量
问题描述
我没有 Curl、php 或 json 方面的专业知识。我需要从外部页面获取特定变量,以便稍后将其存储在我的 mysql 数据库中。在这种情况下,我需要从标签 USD 下的“transferencia”获取结果值。我尝试了一些来自不同页面的示例,但没有成功。提取值的页面是https://s3.amazonaws.com/dolartoday/data.json
我尝试了这段代码,但打印了一个数组,我只需要一个值。
$ch = curl_init();
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
curl_setopt($ch, CURLOPT_URL, "https://s3.amazonaws.com/dolartoday/data.json?dolarp=$transferencia");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$res = curl_exec($ch);
curl_close($ch);
$json = json_decode($res, true);
print_r($json);
我会很感激的!
解决方案
您可以使用file_get_contents()
andjson_decode(...,true)
来检索 json 数据并将其转换为关联数组。
现在您需要做的就是引用您需要的元素,例如在您的情况下为 USD/transferencia:
$url = 'https://s3.amazonaws.com/dolartoday/data.json';
$data = json_decode(file_get_contents($url), true);
// show the value
echo $data["USD"]["transferencia"];
您可以使用var_dump($data)
或print_r($data)
查看数组的结构。这将有助于找到您可能需要的项目的参考。
推荐阅读
- node.js - 如何修复“node-record-lpcm16”库中的“TypeError:record.Recording is not a function”
- entity-framework - 使用 dotnet core 中的实体框架问题检索数据
- typescript - 当测试和源在一起时,Sonarqube 测试报告“报告指的是未配置为测试文件的文件”
- windows - 通过 Win-PS2EXE 转换为 EXE 的 Powershell 脚本可以手动运行,但作为计划任务运行时会出错
- angular - 无法设置组面板网格属性
- javascript - 如何在边界内为 div 设置动画
- amazon-s3 - Lambda 边缘源请求 502
- sql - eclipselink jpa named-native-query 上的“ORA-00936 缺少表达式”,但在独立客户端中工作
- javascript - Javascript 在 Node.js 上下文中访问 ejs 变量
- python - 将自定义函数应用于熊猫数据框中的每一行的更快方法?