Đọc ghi dữ liệu JSON với php
Bài trước chúng ta đã tìm hiểu về kiểu dữ liệu XML đọc,ghi dữ liệu vào file XML.Và các bạn thấy khi lưu dữ liệu trong file sẽ truy cập nhanh hơn rất nhiều khi lưu trong CSDL.Trong bài hôm nay mình sẽ giới thiệu cho các bạn kiểu dữ liệu khác cũng rất quan trong khi lập trình đó chính là JSON.
JSON là gì?
– JSON (JavaScript Object Noattion) là một định dạng hoán vị dữ liệu nhanh. Nó cho phép người dùng dễ dàng tương tác và làm việc hơn so với các dữ liệu ở dạng XML
– JSON nhỏ hơn, nhanh hơn và dễ xử lý hơn so với XML
– Đặc biệt, Json hỗ trợ tương tác dưới dạng ajax rất mạnh. Vì qua đó người dùng có thể sử dụng dữ liệu uyển chuyển hơn và các bước xử lý cũng đơn giản hơn so với việc sử dụng xml.Đó cũng chính là lý do mình đã chuyển qua sử dụng JSON để tương tác với ajax
Cấu trúc cơ bản của JSON
{ "ten_du_lieu" : "Giá_tri" }
+ Giống với XML, Json cho phép người sử dụng tự tạo ra các phần tử trong tài liệu. Các phần tử sẽ tương ứng với giá trị và phân cách bởi dấu “:”.
+ Giá trị ở đây có thể bao gồm:
- Là số
- Là chuỗi
- Là mảng
- Là kiểu boolean
- Là một đối tượng
– Ví dụ:
<script> book={ “title" : “Sống mòn", “author" : “Nam Cao", “category" : “Tiểu thuyết" }; alert(book.title); //hoặc alert(book['title']); </script>
Như ví dụ ở trên, thì kết quả thông báo sẽ là Sống mòn. Vậy để lấy những giá trị trong Json ta sử dụng
tên_biến.tên_phần _tử.
Hoặc
tên_biến[‘tên_phần _tử’]
Tuy nhiên, Json không khuyến khích chúng ta lấy dữ liệu ở dạng mảng
Cấu trúc lồng của JSON
{"ten_mang" : [ {"phan_tu":"Gia_tri"}, {"phan_tu":"Gia_Tri"} ] }
– Ví dụ:
<script> jsons={"books":[ {"book":[ {"title":“Sống mòn"}, {"author":“Nam cao"}, {“category":“Tiểu thuyết"} ]}, {"book":[ {"title":“3 Người bạn"}, {"author":“Nam cao"}, {“category":“Truyện ngắn"} ]}, ]}; alert(jsons.books[1].book[0].title); //Kết quả là 3 Người bạn </script>
Các bạn thấy để truy cập vào phần tử trong dữ liệu JSON các bạn cũng cần truy cập như trong 1 mảng,cũng cần biết vị trí hoặc key của phần tử đó.
Duyệt lặp nội dung trong JSON
Với vị dụ cấu trúc lồng ở trên ta duyệt:
<script> for(i=0;i<=jsons.books.length;i++) { alert("Tiêu đề: "+jsons.books[i].book[0].title); alert("Tác giả:"+jsons.books[i].book[1].author); alert(“Thể loại:"+jsons.books[i].book[2].category) }; </script>
PHP và JSON
Chuyển đổi dữ liệu tử mảng về Json
– Cú pháp:
Json_encode($mang);
– Ví dụ:
<?php $data=array( "1" => “PHP cơ bản", "2" => “PHP nâng cao", "3" => “PHP Frameword", ); echo json_encode($data); ?>
Và kết quả:
{ "1":"PHP cơ bản ", "2":"PHP nâng cao ", "3":"PHP Frameword“ }
+ Như vậy các bạn thấy là từ 1 mảng trong php chúng ta hoàn toàn có thể chuyển mảng này về 1 chuỗi mã dạng JSON
Chuyển dữ liệu từ Json sang đối tượng
– Cú pháp:
Json_decode($json);
– Ví dụ:
$data = '{ "1":"PHP cơ bản ", "2":"PHP nâng cao ", "3":"PHP Frameword“ }'; $object = json_decode($data); print_r($object);
Và kết quả là:
stdClass Object ( [1] => “PHP cơ bản” [2] => “PHP nâng cao” [3] => “PHP Frameword” )
+ Như vậy các bạn thấy là từ chuỗi mã json chúng ta hoàn toàn có thể chuyển mã Json này về 1 đối tượng trong php
Tổng kết:
– Json là kiến thức rất quan trọng để làm việc với các thư viện JS mạnh như sencha, Ext js, dojo. Do vậy, việc nắm vững Json sẽ giúp bạn hiểu và tận dụng được lợi thế mà json đem lại. Nhằm phục vụ tốt các yêu cầu mà bạn mong muốn.
– Thư viện và cách sử dụng json rất nhiều.Nếu bạn cần tìm hiểu sâu hơn nữa về Json. Hãy viếng thăm trang chủ của json để tìm hiểu chi tiết về những khái niệm quan trọng khác.
Written by Nguyễn Tuấn Vũ
Hocphp.info là website chia sẻ kiến thức lập trình đặt biệt tập trong vào lập trình web. Hi vọng mọi người cùng nhau phát triển và chia sẽ nhiều hơn nữa, ngoài ra mình cũng cố gắng chia sẽ các seri về web cũng như các ngôn ngữ khác chất nhất có thể. có gì thiếu sót hi vọng mọi người bỏ qua.
Bài viết chùng chuyên mục
Categories
- Codeigniter (25)
- Expressjs (2)
- Html & Css (5)
- Javascript & Jquery (13)
- Lập trình ios (12)
- Laravel Framework (15)
- MongoDB (5)
- Nodejs (3)
- Php cơ bản (17)
- Php nâng cao (13)
- SEO và MMO (1)
- Symfony (4)
- Tin công nghệ (2)
- Tổng hợp (13)
Recent Comments
29Mar
2 / By Quả Caching website trong codeigniter framework
Bài viết rất hay, mình hỏi với: Mình dùng framework - codeIgnite nh
07Mar
8 / By phimav Các cách chèn video youtube vào bài viết
ai get link thằng ondrive được không?
28Feb
3 / By Đọc ghi dữ liệu JSON trong php - wikisinhvien Mảng trong PHP
[…] truy cập vào phần tử trong dữ liệu JSON các bạn cũng c
22Jan
3 / By Giới thiệu PHP Framework CodeIgniter - wikisinhvien Mảng trong PHP
[…] Làm việc và xử lý mảng thật […]
07Dec
10 / By admin Mô Hình MVC
Bạn cố gắng tham khảo thêm ở những tài liệu khác, có thời gi