Hướng dẫn php 7.4 json extension - php 7.4 json mở rộng

Ký hiệu đối tượng JavaScript

  • Giới thiệu
  • Installing/Configuring
    • Yêu cầu
    • Cài đặt
    • Cấu hình thời gian chạy
    • Loại tài nguyên
  • Hằng số được xác định trước
  • JSONEXICEVECTE - Lớp Jsoneoxception
  • Jsonsonserializable - Giao diện Jsonsonserializable
    • Jsonsonserializable :: jsonserialize - Chỉ định dữ liệu cần được tuần tự hóa thành JSON
  • Chức năng JSON
    • JSON_DECODE - Giải mã chuỗi JSON
    • JSON_ENCODE - Trả về biểu diễn JSON của một giá trị
    • JSON_LAST_ERROR_MSG - Trả về chuỗi lỗi của cuộc gọi cuối cùng json_encode () hoặc json_decode ()
    • JSON_LAST_ERROR - Trả về lỗi cuối cùng xảy ra

Không có người dùng đóng góp ghi chú cho trang này.

Nếu bạn đã biết, JSON có thể đến định dạng của một tệp. Chúng được đặt tên là một cái gì đó giống như sau - Vitallogicdata.json. Nó hầu như là một tệp văn bản nhưng chứa dữ liệu được định dạng tốt theo kiểu ký hiệu đối tượng JavaScript. Những tệp này có thể được đọc từ hoặc, tất nhiên, cũng được thêm vào.

Lần đầu tiên tôi nhìn thấy tập tin .json tôi khá bối rối, tôi luôn nghĩ về JSON chỉ thuộc về trình duyệt. Nhưng có nhiều lý do cho các tệp JSON, vì vậy chúng ta cần biết cách quản lý chúng. Bài viết này sẽ cung cấp cho bạn kiến ​​thức để đọc các tệp JSON với PHP và đó là một hướng dẫn lý tưởng cho người mới bắt đầu.

Dữ liệu tệp JSON

Đối với hướng dẫn này, tôi đã tìm thấy một kho lưu trữ trên GitHub là hoàn hảo. Nó chứa một danh sách lớn các tên màu và số hex của họ. Bạn có thể nhận được & nbsp; css-color-name.json & nbsp; từ repo ở đây. Hoặc bạn có thể tải xuống tệp trực tiếp ở đây.css-color-names.json from the repo here. Or you can download the file directly here.

Như bạn sẽ thấy trong tệp, nội dung sẽ được trình bày như đoạn trích sau -

{
  "aliceblue": "#f0f8ff",
  "antiquewhite": "#faebd7",
  "aqua": "#00ffff",
  "aquamarine": "#7fffd4",
  "azure": "#f0ffff",
  "beige": "#f5f5dc",
  "bisque": "#ffe4c4",
  "black": "#000000",
......
}

Sau khi tải xuống, đặt tệp vào thư mục gốc của môi trường trang web PHP của bạn. Ví dụ http: //localhost/css-coror-mors.json. Điều này sẽ giúp dễ dàng tìm thấy khi chúng ta đang cố đọc tệp qua PHP.

Đọc tệp JSON với ví dụ PHP

Trong ví dụ sau, chúng tôi sẽ sử dụng PHP để đọc dữ liệu từ tệp CSS-Color-Name. Sau đó, khi chúng tôi in thành công dữ liệu vào trang, sau đó chúng tôi sẽ đưa dữ liệu vào các thẻ JavaScript và đăng nhập vào bảng điều khiển. Bắt đầu nào.

Đầu tiên, chúng ta cần đọc nội dung tệp với chức năng gốc của PHP & nbsp; file_get_contents. Tham số đầu tiên File_Get_Contents mong đợi là đường dẫn đến tệp cần đọc. Trong trường hợp này & nbsp; css-color-name.json.

Lưu ý rằng thư mục gốc không cần phải được chỉ định, bởi vì trong trường hợp này, tập lệnh đã nằm trong thư mục đó.

Đọc nội dung tệp json
// Get the contents of the JSON file 
$strJsonFileContents = file_get_contents("css-color-names.json");
var_dump($strJsonFileContents); // show contents

Mã trên đổ như sau vào trang -

string '{
  "aliceblue": "#f0f8ff",
  "antiquewhite": "#faebd7",
  "aqua": "#00ffff",
  "aquamarine": "#7fffd4",
  "azure": "#f0ffff",
  "beige": "#f5f5dc",
  "bisque": "#ffe4c4",
  "black": "#000000",
  "blanchedalmond": "#ffebcd",
  "blue": "#0000ff",
  "blueviolet": "#8a2be2",
  "brown": "#a52a2a",
  "burlywood": "#deb887",
  "cadetblue": "#5f9ea0",
  "chartreuse": "#7fff00",
  "chocolate": "#d2691e",
  "coral": "#ff7f50",
  "cornflowerblue": "#6495ed",
  "cornsilk": "#fff8dc",
  "crimson": "#dc143c",
  "cyan": '... (length=3841)

Tôi biết suy nghĩ của bạn, nó có thực sự đơn giản không? Vâng, hầu như có, nhưng, để nó trở nên hữu ích, chúng ta cần chuyển nó thành một số JavaScript hoặc chuyển đổi nó thành một mảng PHP. Tôi sẽ làm cả hai trong các ví dụ sau.

Chuyển đổi nội dung tệp JSON thành mảng PHP

Chuỗi JSON trong PHP là khá vô dụng, vì vậy nếu chúng ta chuyển đổi nó thành một mảng, thì chúng ta có thể lặp qua nó và thực hiện một số công cụ thú vị với dữ liệu. Bạn có thể muốn lưu trữ nó trong cơ sở dữ liệu hoặc in nó thực hiện bảng HTML. Bất cứ điều gì bạn muốn làm, nó sẽ cần phân tích cú pháp như một mảng trước. Để làm điều này, chúng tôi sử dụng json_decode với một tham số boolean tuyệt vời để chuyển đổi thành một mảng kết hợp.

// Get the contents of the JSON file 
$strJsonFileContents = file_get_contents("css-color-names.json");
// Convert to array 
$array = json_decode($strJsonFileContents, true);
var_dump($array); // print array

Mã PHP ở đây sẽ in mảng kết hợp đầy đủ vào trang như sau -

array (size=148)
  'aliceblue' => string '#f0f8ff' (length=7)
  'antiquewhite' => string '#faebd7' (length=7)
  'aqua' => string '#00ffff' (length=7)
  'aquamarine' => string '#7fffd4' (length=7)
  'azure' => string '#f0ffff' (length=7)
.......

Điều này bây giờ có nghĩa là chúng ta có thể dễ dàng truy cập từng màu bằng tên được chỉ định của chúng và trả về giá trị thập lục phân có thể được sử dụng trong CSS chẳng hạn. Sử dụng mã sau, chúng tôi có thể yêu cầu màu Hex Aqua từ mảng. Điều này, tất nhiên, mở cửa sổ cơ hội mới cho ứng dụng.

echo $arrayJsonColors["aqua"]; // outputs #00ffff
Tiêm JSON vào JavaScript

Chín trong số mười lần, làm việc với ký hiệu đối tượng JavaScript có nghĩa là bạn rất có thể sẽ cần nó cho một số chức năng JavaScript. Đây là lý do tại sao tôi muốn nhanh chóng chỉ ra cách đưa dữ liệu trực tiếp vào biến JavaScript bằng PHP. Nó rất đơn giản để làm.

Bằng cách sử dụng PHP trong các thẻ tập lệnh, chúng ta có thể lặp lại dữ liệu trong khi xác định biến JavaScript. Đổi lại, JSON sẽ được phân tích cú pháp và sẵn sàng sử dụng. Xem ví dụ sau -

var colorsJson = ; // Pass in json from PHP
console.info(colorsJson); // Log to console.
console.log(colorsJson.aqua); // Log single value to console.

Ảnh chụp màn hình dưới đây cho thấy đầu ra bảng điều khiển trong Chrome. JSON đã được phân tích cú pháp chính xác và hiện có sẵn để truy cập các thuộc tính với ký hiệu DOT.

Người giới thiệu

Trong suốt các ví dụ, trong bài viết này, một số hàm PHP gốc đã được sử dụng để đọc tệp JSON. Dưới đây là liên kết trực tiếp với các tài liệu chức năng đó trên trang web PHP. Kiểm tra chúng để tham khảo.

  • file_get_contents
  • json_decode

Bản tóm tắt

Trong hướng dẫn này, chúng tôi đã học được rằng bạn có thể đọc các tệp ký hiệu đối tượng JavaScript trực tiếp trong PHP. Nó có nhiều khả năng làm như vậy và thậm chí có thể phân tích nó để sử dụng thêm, như được hiển thị khi được chuyển đổi thành một mảng. Ngoài ra, việc truyền dữ liệu trực tiếp vào JavaScript đã được giải thích, cung cấp cho bạn các công cụ để sau đó xây dựng những thứ như trực quan hóa hoặc chuyển vào cuộc gọi AJAX.