php - 通过 PHP 访问 JSON 数据

标签 php json icalendar

我正在尝试访问通过目录服务从数据库生成的数据,该数据库创建通过 JSON 编码发送到网站的 ics 文件。

正在生成多个文件或数量未知。此时我的主要问题是我需要将 JSON 文件中的信息解析回 ics 文件中。

我现在遇到的困难是读取 JSON 文件中的信息。

JSON 文件是这样的:

{
  "SMSDATA": {
      "date": 20170817062448,
      "person": {
          "data":[{
             "person": 321654978,
             "information": "person information"
          },{
             "person": 3216549,
             "information": "person information"
          }]
}}

我想做的是深入挖掘并将personinformation数据放入ics文件中。

我目前在 PHP 中简单地显示数据以查看我是否正在访问正确的数据是:

    $str = '../filename/test.json'; // The location of the files
    $contents = file_get_contents($str);  // get the information from the file
    $decode = json_decode($contents, true); // Creates the JSON as an array

    //array loop
    foreach($decode as $key => $value){
    echo $value["person"]. " -> " . $value["information"]. "<br>"; // Should display the information needed
    print_r ($value);  // test dump of data
}

我很清楚我挖掘得不够深入。我发现这个资源非常有用:How do I extract data from JSON with PHP? ,以及Convert and Loop through JSON with PHP and JavaScript Arrays/Objects 。我也相信ICal Parser会有很大用处,但现阶段不知道如何使用它。

我只想确保现在读取的是正确的数据,然后下一步将使用人员和信息数据创建 .ics 文件。

感谢大家的帮助。

(顺便说一句,我只使用 PHP 几个月)

最佳答案

你是对的,你没有在正确的数组成员上启动循环。

$contents = '{
        "SMSDATA": {
            "date": 20170817062448,
            "person": {
                "data":[{
                   "person": 321654978,
                   "information": "person information"
                },{
                   "person": 3216549,
                   "information": "person information"
                }]
            }
    }
}';

$decode = json_decode($contents, true);
print_r($decode);

foreach($decode['SMSDATA']['person']['data'] as $value){
    echo $value["person"]. " -> " . $value["information"]. "<br>";
}

结果

321654978 -> person information<br>
3216549 -> person information<br>

关于php - 通过 PHP 访问 JSON 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45787863/

相关文章:

php - MySQL单条语句合并两张表

python - python 中的 JsonRpc 客户端

php - CodeIgniter 中的手动事务

javascript - 如何在javascript中从JSON对象获取没有键的值

java - 字符串压缩: Passing Object Through URL

javascript - nodemailer 日历事件邀请不起作用

PHP+CalDav+ICS 房间时隙算法?

javascript - HTML:iCal 链接?

php - AJAX:返回多个变量的问题

php - 模拟 HTTP 请求进行单元测试