一尘不染

在PHP中读取Json / Array字符串

json

我有一个有效的Json格式的字符串,它看起来像这样:

{
    "message": "success",
    "result": {
        "46620": {
            "course_id": "29",
            "en_title": "Google Analytics (Basic)",
            "fa_title": "مبانی گوگل آنالیتیکز",
            "badge_link": "http://www.darsnameh.com/badge/index.php?user=46620&badge="
        },
        "49449": {
            "course_id": "16",
            "en_title": "Multimedia Reporting 1- Reporting in the Internet Age",
            "fa_title": "گزارش‌گری چندرسانه‌ای ۱- گزارشگری در زمانه‌ی اينترنت",
            "badge_link": "http://www.darsnameh.com/badge/index.php?user=49449&badge="
        },
        "55480": {
            "course_id": "33",
            "en_title": "HTML for Journalists and Bloggers",
            "fa_title": "آشنایی با اچ‌تی‌ام‌ال Ùˆ Ùناوری‌های اینترنت برای روزنامه‌نگاران Ùˆ وبلاگ‌نویس‌ها",
            "badge_link": "http://www.darsnameh.com/badge/index.php?user=55480&badge="
        },
        "59250": {
            "course_id": "31",
            "en_title": "Twitter",
            "fa_title": "توییتر",
            "badge_link": "http://www.darsnameh.com/badge/index.php?user=59250&badge="
        },
        "103716": {
            "course_id": "42",
            "en_title": "How to write a CV?",
            "fa_title": "چگونه رزومه بنویسیم؟",
            "badge_link": "http://www.darsnameh.com/badge/index.php?user=103716&badge="
        }
    }
}

我想读取不同的字段,例如所有fa_titles,我使用$ obj = json_decode($ str,true);
将此转换为Json,然后回显sizeof($ obj [‘result’]);
告诉我它有5个结果对象,但是现在如何访问fa_title或en_title字段?


阅读 148

收藏
2020-07-27

共1个答案

一尘不染

在JSON中,数组由方括号([])指定,而字典仅具有大括号({})。

您可以通过执行分别访问每个结果对象$obj['result']['46620']['en_title']。结果对象是关联数组的关联数组(也称为字典)。

2020-07-27