Copyright © All rights reserved | This template is made with by Colorlib

Next Big Event:

บทความในหมวด

PHP

PHP

อ่านข้อมูล Array จาก JSON ไฟล์ ด้วย PHP

2010-05-20 Games 19,520
2021-06-04 Games

อัพเดต

  1. ฉันจะดึงข้อมูลจาก JSON ด้วย PHP ได้อย่างไร qastack.in.th

-------------------------------------

บทความเก่า [ 2010-05-20 ]
ในไฟล์ JSON มีการเก็บข้อมูลในแบบ Array ด้วยเหมือนกัน ซึ่งเมื่่อตอนที่แล้วเราได้ดูวิธีการเรียกใช้ข้อมูลใน JSON ไฟล์แบบโดยตรงมาแล้ว


สำหรับวันนี้เราจะมาดูวิธีในการเรียกใช้ข้อมูลใน JSON ไฟล์ที่มีการเก็บข้อมูลแบบ Array ไว้นะครับ

ไฟล์ data3.json

{
    "controls": [
        [
            "fire", 
            "na"
        ], 
        [
            "jump", 
            "na"
        ], 
        [
            "movement", 
            "mouse"
        ]
    ],
    "tags": [
        "sudoku", 
        "sudoku 24", 
        "puzzle", 
        "puzzles", 
        "puzzlepond"
    ],
    "category": "Puzzles",
    "control_scheme": "{\"fire\": \"na\", \"jump\": \"na\", \"movement\": \"mouse\"}"
}

จากด้านบนข้อมูลที่อยู่ในรูปแบบ Array คือข้อมูลที่อยู่ใน [ ] ครับ มาดู code php กัน มาดูวิธีแบบเข้าถึงข้อมูลโดยตรง

controls[$i][0];
$x2 = $data->controls[$i][1];
echo $x1."=".$x2;
echo "
"; } /* แสดงผลออกมาดังนี้ fire=na jump=na movement=mouse */ ?>

อีกวิธีเป็นการแปลงข้อมูลใน JSON ให้อยู่ในรูปแบบ Array ของ PHP ก่อนนำไปใช้งานอีกทีครับ

 Array ( [0] => Array ( [0] => fire [1] => na ) [1] => Array ( [0] => jump [1] => na ) [2] => Array ( [0] => movement [1] => mouse ) ) [tags] => Array ( [0] => sudoku [1] => sudoku 24 [2] => puzzle [3] => puzzles [4] => puzzlepond ) [category] => Puzzles [control_scheme] => {"fire": "na", "jump": "na", "movement": "mouse"} ) 
*/

echo "
"; while (list($key) = each($jarr)) { // ทำการ list ค่า key ของ Array ทั้งหมดออกมา echo "=================
"; echo "$key
"; echo "================="; echo "
"; $count = count($jarr[$key]); // นับจำนวนแถวที่เก็บไว้ใน Array ใน key นั้นๆ if ($count>1){ for ($i=0;$i<$count;$i++) { echo $jarr[$key][$i]; // พิมพ์ค่าที่ถูกเก็บไว้ในแต่ละแถวของ key นั้นๆ echo "
"; } } else { echo $jarr[$key]; // กรณีค่าที่เก็บไว้มีเพียงค่าเดียว echo "
"; } } /* แสดงผลออกมาดังนี้ ================= controls ================= Array Array Array ================= tags ================= sudoku sudoku 24 puzzle puzzles puzzlepond ================= category ================= Puzzles ================= control_scheme ================= {"fire": "na", "jump": "na", "movement": "mouse"} */ ?>

จะเห็นได้ว่าใน controls ค่าที่ถูกเก็บไว้เป็น Array อีกทีหนึ่ง เมื่อสั่งพิมพ์ค่าออกมาจึงยังไม่แสดงผลที่ถูกต้อง

 

หมายเหตุ

อ่านเพิ่มเติมความเข้าใจเกี่ยวกับ Array ใน PHP ได้ที่ www.worldphp.com


Array, JSON, PHP | PHP

เข้าชมแล้ว 2,929,630 ครั้ง | ทั้งเว็บออนไลน์   2 ท่าน | หน้านี้ออนไลน์   1 ท่าน
Page generated in 0.0129 seconds ! ( 13 query)