Cách convert dữ liệu từ mysql sang json bằng php

Trong PHP, Đổi dữ liệu từ MySQL sang kiểu JSON là một trong những công việc quan trọng cần làm trong Lập trình web. JSON đã có nhu cầu từ nhiều năm trước và nó có thể được sử dụng trên xml làm định dạng trao đổi dữ liệu trong các ứng dụng web. Bằng cách sử dụng định dạng json có những lợi ích riêng, nó có trọng lượng nhẹ, nó có khả năng lưu trữ loại cấu trúc dữ liệu lớn ở định dạng văn bản đơn giản và nó có thể dễ dàng đọc được bằng con người. JSON là một định dạng trao đổi dữ liệu giữa các ứng dụng web hoặc thiết bị di động và nó có thể xuất dữ liệu thành văn bản thuần túy mà con người có thể đọc được một cách trơn tru và nó có thể hoạt động trơn tru với bất kỳ loại ngôn ngữ nào. Bây giờ tôi đã chỉ cách chuyển đổi dữ liệu mysql thành json trong php


cơ sở dữ liệu


 --  
 -- Table structure for table `tbl_employee`  
 --  
 CREATE TABLE IF NOT EXISTS `tbl_employee` (  
  `id` int(11) NOT NULL AUTO_INCREMENT,  
  `name` varchar(50) NOT NULL,  
  `gender` varchar(10) NOT NULL,  
  `designation` varchar(30) NOT NULL,  
  PRIMARY KEY (`id`)  
 ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;  
 --  
 -- Dumping data for table `tbl_employee`  
 --  
 INSERT INTO `tbl_employee` (`id`, `name`, `gender`, `designation`) VALUES  
 (1, 'Michael Bruce', 'Male', 'System Architect'),  
 (2, 'Jennifer Winters', 'Female', 'Senior Programmer'),  
 (3, 'Donna Fox', 'Female', 'Office Manager'),  
 (4, 'Howard Hatfield', 'Male', 'Customer Support');  


mysql_to_json. php


   
   
        
           Webslesson Tutorial | Convert Data from Mysql to JSON Format using PHP  
        
        
           ';  
           print_r(json_encode($json_array));  
           echo '
';*/ echo json_encode($json_array); ?>

  • Chia sẻ cái này.   
  • Facebook
  • Twitter
  • Google+
  • Tình cờ gặp
  • đào

Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách trích xuất dữ liệu từ cơ sở dữ liệu MySQL và xuất nó thành tệp ở định dạng JSON, sử dụng PHP

JSON là gì?

JSON (Ký hiệu đối tượng JavaScript) là một định dạng nhẹ, được sử dụng để định dạng dữ liệu để trao đổi. Nó dựa trên một tập hợp con của JavaScript. Lý do cho sự phổ biến của JSON là việc sử dụng nó trong API của nhiều ứng dụng như Facebook và Twitter, v.v.

JSON được xây dựng trên tập hợp các cặp tên/giá trị. Trong JavaScript, JSON được biểu diễn dưới dạng một chuỗi

Hãy để tôi giải thích điều này cho bạn, với một ví dụ

var x1 = {x:y} is an object. // In JavaScript
var x2 =’{“x”:”y”}’ // is an object of type string. This is a JSON equivalent of the upper object.

Để chuyển đổi nó thành một đối tượng JavaScript, bạn phải phân tích nó như hình bên dưới

var x = JSON.parse(x2);

Một mảng JSON được bao bọc bên trong hai dấu ngoặc. Giữa các dấu ngoặc này, bạn có thể chèn các đối tượng JSON được phân tách bằng dấu “,”. Đối tượng JSON bắt đầu bằng { và kết thúc bằng }. Cặp tên và giá trị được phân tách bằng dấu hai chấm

Nói chung, hầu hết các ứng dụng PHP đều hoạt động với MySQL dưới dạng cơ sở dữ liệu phụ trợ và trong PHP, chúng ta có thể trích xuất dữ liệu thông qua lớp MySQLi. Khi nghĩ về JSON với PHP và MySQL, nó có thể khá khó khăn. Đây là lý do chính xác để viết hướng dẫn này, để cuối cùng làm sáng tỏ chủ đề

Sau khi chạy truy vấn và lấy dữ liệu từ tập kết quả MySQL, bạn có thể chuyển đổi dữ liệu thành JSON bằng hàm PHP có tên json_encode(). Hàm gốc này không yêu cầu lặp qua dữ liệu và là hàm một dòng có vẻ rõ ràng trong mã của bạn

điều kiện tiên quyết

Để bắt đầu với hướng dẫn này về cách chuyển đổi dữ liệu từ Công cụ MySQL sang JSON, bạn phải có sẵn môi trường sau

  • >= Phiên bản PHP 5. 0. 7 Đã cài đặt
  • Đã cài đặt MySQL
  • Một máy chủ web (Apache)
  • Một IDE, tốt nhất là một IDE có thể xử lý PHP độc đáo để dễ nhìn hơn

Nếu bạn đã có sẵn những thứ này, thì chúng ta có thể tiếp tục và bước vào phần thú vị

Tìm nạp MySQL liên kết với JSON

Chúng ta hãy bắt đầu với ví dụ đầu tiên, tạo JSON từ hàm MySQLi, fetch_assoc. Đoạn mã quan trọng trong tập lệnh sau là json_encode, đây là nơi điều kỳ diệu xảy ra

try {
            // Try Connect to the DB with new MySqli object - Params {hostname, userid, password, dbname}
            $mysqli = new mysqli("localhost", "root", "", "mysqli_examples");

            
            $statement = $mysqli->prepare("select username, first_name, last_name, gender from users limit 10");


            $statement->execute(); // Execute the statement.
            $result = $statement->get_result(); // Binds the last executed statement as a result.

            echo json_encode(($result->fetch_assoc())); // Parse to JSON and print.
  
        } catch (mysqli_sql_exception $e) { // Failed to connect? Lets see the exception details..
            echo "MySQLi Error Code: " . $e->getCode() . "
"; echo "Exception Msg: " . $e->getMessage(); exit(); // exit and close connection. } $mysqli->close(); // finally, close the connection

Đoạn mã trên đã in đoạn mã sau, được định dạng JSON thành trang

{
	"username": "rogers63",
	"first_name": "david",
	"last_name": "john",
	"gender": "Female"
}

Một công cụ web rất hay để luôn kiểm tra xem JSON của bạn có được định dạng đúng hay không là trang web có tên JSONLint. Tôi thực sự khuyên bạn nên sử dụng nó mỗi khi bạn tạo JSON vì nó không chỉ xác thực dữ liệu cho bạn mà còn kiểm tra lỗi và cho bạn biết chính xác vị trí của dòng sai. Tất nhiên, điều này là tuyệt vời để gỡ lỗi. Xem bên dưới JSONLinter đang hoạt động

Cách convert dữ liệu từ mysql sang json bằng php

Mảng tìm nạp MySQL sang JSON PHP

Sử dụng mảng tìm nạp để chuyển đổi thành JSON có thể hơi quá, tùy thuộc vào những gì bạn muốn. Lý do là vì fetch_array xuất dữ liệu của bạn bằng chỉ mục kết hợp và được đánh số. Có nghĩa là JSON sau đó sẽ giữ cả hai thứ này khi được chuyển đổi. Đây là ví dụ, với dòng json_encode là quan trọng nhất –

try {
            // Try Connect to the DB with new MySqli object - Params {hostname, userid, password, dbname}
            $mysqli = new mysqli("localhost", "root", "", "mysqli_examples");

            
            $statement = $mysqli->prepare("select username, first_name, last_name, gender from users limit 10");


            $statement->execute(); // Execute the statement.
            $result = $statement->get_result(); // Binds the last executed statement as a result.

            echo json_encode(($result->fetch_array())); // Parse to JSON and print.
  
        } catch (mysqli_sql_exception $e) { // Failed to connect? Lets see the exception details..
            echo "MySQLi Error Code: " . $e->getCode() . "
"; echo "Exception Msg: " . $e->getMessage(); exit(); // exit and close connection. } $mysqli->close(); // finally, close the connection

Cái nào xuất ra JSON sau đây -

{
	"0": "rogers63",
	"username": "rogers63",
	"1": "david",
	"first_name": "david",
	"2": "john",
	"last_name": "john",
	"3": "Female",
	"gender": "Female"
}

Một lần nữa, hãy nhanh chóng thả cái này vào công cụ JSONLint để đảm bảo rằng chúng ta có JSON hợp lệ

Cách convert dữ liệu từ mysql sang json bằng php

Cách convert dữ liệu từ mysql sang json bằng php

Đầu ra, như đã giải thích trước đây, có hai loại khóa truy cập, một số nguyên và một chuỗi. Nếu không cần cả hai, bạn có thể sử dụng một tham số trong hàm fetch_array để lọc ra một trong hai. Xem bài viết chuyên sâu của tôi về các chức năng MySQLi tại đây

Bản tóm tắt

MySQL To JSON thực sự đơn giản, với việc sử dụng hàm json_encode tuyệt vời, chúng ta có thể phân tích kết quả MySQL cực kỳ nhanh chóng và dễ dàng. Hàm này cũng có thể được sử dụng với nhiều định dạng dữ liệu khác, nó không nhất thiết phải là kết quả từ MySQL, chẳng hạn, nó có thể là một mảng được tạo thủ công

Kiểm tra chức năng json_encode trên tài liệu PHP để đọc thêm. Vui lòng sử dụng bất kỳ mã nào trong bài đăng này trong các dự án của riêng bạn. Nếu bạn có bất kỳ câu hỏi nào, hãy để lại trong phần bình luận và tôi sẽ liên hệ lại với bạn ngay khi có thể

Cuối cùng, tôi đã đề cập đến công cụ web JSONLint và thực sự khuyên bạn nên kiểm tra nó. Đó là một công cụ miễn phí, vô giá giúp ích khi làm việc với JSON bất kể bạn đang cố gắng đạt được điều gì

Làm cách nào để trả về dữ liệu MySQL ở định dạng JSON bằng PHP?

Dưới đây là quy trình sử dụng PHP để chuyển đổi MySQL thành chuỗi JSON. .
Bước 1. Tạo bảng và thêm dữ liệu demo trong cơ sở dữ liệu. .
Bước 2. Kết nối cơ sở dữ liệu MySQL. .
Bước 3. Lấy dữ liệu từ cơ sở dữ liệu MySQL. .
Bước 4. Chuyển đổi tập kết quả MySQL thành mảng PHP. .
Bước 5. Chuyển đổi mảng PHP thành chuỗi JSON

Làm cách nào để chuyển đổi dữ liệu MySQL sang JSON?

Xuất dữ liệu MySQL sang JSON sử dụng hàm CONCAT() và GROUP_CONCAT() . Sử dụng kết hợp các hàm CONCAT() và GROUP_CONCAT(), dữ liệu từ chuỗi SQL có thể được chuyển đổi thành định dạng JSON.

Làm cách nào để hiển thị dữ liệu từ cơ sở dữ liệu trong PHP bằng JSON?

Để sử dụng hàm PHP file_get_contents() chúng ta có thể đọc một tệp và lấy dữ liệu có trong tệp JSON. Sau khi lấy dữ liệu cần chuyển định dạng JSON sang định dạng mảng. Sau đó, với việc sử dụng câu lệnh lặp sẽ hiển thị dưới dạng bảng

Làm cách nào để gửi dữ liệu ở định dạng JSON trong PHP?

Gửi dữ liệu JSON qua POST bằng PHP cURL . Initiate new cURL resource using curl_init(). Thiết lập dữ liệu trong mảng PHP và mã hóa thành chuỗi JSON bằng json_encode(). Đính kèm dữ liệu JSON vào các trường POST bằng tùy chọn CURLOPT_POSTFIELDS. Đặt Loại nội dung của yêu cầu thành ứng dụng/json bằng tùy chọn CURLOPT_HTTPEADER.