Hướng dẫn json convert to array php - json chuyển đổi sang mảng php

Bạn có thể chuyển đổi đối tượng JSON thành Array & String.

$data='{"resultList":[{"id":"1839","displayName":"Analytics","subLine":""},{"id":"1015","displayName":"Automation","subLine":""},{"id":"1084","displayName":"Aviation","subLine":""},{"id":"554","displayName":"Apparel","subLine":""},{"id":"875","displayName":"Aerospace","subLine":""},{"id":"1990","displayName":"Account Reconciliation","subLine":""},{"id":"3657","displayName":"Android","subLine":""},{"id":"1262","displayName":"Apache","subLine":""},{"id":"1440","displayName":"Acting","subLine":""},{"id":"710","displayName":"Aircraft","subLine":""},{"id":"12187","displayName":"AAC","subLine":""}, {"id":"20365","displayName":"AAT","subLine":""}, {"id":"7849","displayName":"AAP","subLine":""}, {"id":"20511","displayName":"AACR2","subLine":""}, {"id":"28585","displayName":"AASHTO","subLine":""}, {"id":"45191","displayName":"AAMS","subLine":""}]}';

$b=json_decode($data);

$i=0;
while($b->{'resultList'}[$i])
{
    print_r($b->{'resultList'}[$i]->{'displayName'});
    echo "
"; $i++; }

Nếu bạn đang làm việc với JSON (ký hiệu đối tượng JavaScript) và cần phải chuyển đổi chuỗi JSON thành mảng hoặc đối tượng và lặp qua nó hoặc ngược lại, hãy lấy một mảng hoặc đối tượng và chuyển đổi nó thành chuỗi JSON để trả về, cả hai có thể được thực hiện trong PHP hoặc JavaScript.

Tôi đã chia bài viết này thành ba phần:

  • Làm việc với PHP
  • Làm việc với JavaScript
  • Làm việc với cả PHP và JavaScript

Chuyển đổi chuỗi JSON sang mảng PHP hoặc đối tượng

PHP> = 5.2.0 có hàm,


  // JSON string
  $someJSON = '[{"name":"Jonathan Suh","gender":"male"},{"name":"William Philbin","gender":"male"},{"name":"Allison McKinnery","gender":"female"}]';

  // Convert JSON string to Array
  $someArray = json_decode($someJSON, true);
  print_r($someArray);        // Dump all data of the Array
  echo $someArray[0]["name"]; // Access Array data

  // Convert JSON string to Object
  $someObject = json_decode($someJSON);
  print_r($someObject);      // Dump all data of the Object
  echo $someObject[0]->name; // Access Object data
?>
2, giải mã chuỗi JSON thành biến PHP. Theo mặc định, nó trả về một đối tượng. Tham số thứ hai chấp nhận một boolean khi được đặt là

  // JSON string
  $someJSON = '[{"name":"Jonathan Suh","gender":"male"},{"name":"William Philbin","gender":"male"},{"name":"Allison McKinnery","gender":"female"}]';

  // Convert JSON string to Array
  $someArray = json_decode($someJSON, true);
  print_r($someArray);        // Dump all data of the Array
  echo $someArray[0]["name"]; // Access Array data

  // Convert JSON string to Object
  $someObject = json_decode($someJSON);
  print_r($someObject);      // Dump all data of the Object
  echo $someObject[0]->name; // Access Object data
?>
3, hãy yêu cầu nó trả về các đối tượng dưới dạng mảng liên kết. Bạn có thể tìm hiểu thêm về chức năng

  // JSON string
  $someJSON = '[{"name":"Jonathan Suh","gender":"male"},{"name":"William Philbin","gender":"male"},{"name":"Allison McKinnery","gender":"female"}]';

  // Convert JSON string to Array
  $someArray = json_decode($someJSON, true);
  print_r($someArray);        // Dump all data of the Array
  echo $someArray[0]["name"]; // Access Array data

  // Convert JSON string to Object
  $someObject = json_decode($someJSON);
  print_r($someObject);      // Dump all data of the Object
  echo $someObject[0]->name; // Access Object data
?>
2 từ tài liệu PHP.


  // JSON string
  $someJSON = '[{"name":"Jonathan Suh","gender":"male"},{"name":"William Philbin","gender":"male"},{"name":"Allison McKinnery","gender":"female"}]';

  // Convert JSON string to Array
  $someArray = json_decode($someJSON, true);
  print_r($someArray);        // Dump all data of the Array
  echo $someArray[0]["name"]; // Access Array data

  // Convert JSON string to Object
  $someObject = json_decode($someJSON);
  print_r($someObject);      // Dump all data of the Object
  echo $someObject[0]->name; // Access Object data
?>

Vòng lặp qua mảng PHP hoặc đối tượng

Vòng lặp qua một mảng PHP hoặc đối tượng với vòng lặp


  // JSON string
  $someJSON = '[{"name":"Jonathan Suh","gender":"male"},{"name":"William Philbin","gender":"male"},{"name":"Allison McKinnery","gender":"female"}]';

  // Convert JSON string to Array
  $someArray = json_decode($someJSON, true);
  print_r($someArray);        // Dump all data of the Array
  echo $someArray[0]["name"]; // Access Array data

  // Convert JSON string to Object
  $someObject = json_decode($someJSON);
  print_r($someObject);      // Dump all data of the Object
  echo $someObject[0]->name; // Access Object data
?>
5.


  // Loop through Array
  $someArray = ...; // Replace ... with your PHP Array
  foreach ($someArray as $key => $value) {
    echo $value["name"] . ", " . $value["gender"] . "
"
; } // Loop through Object $someObject = ...; // Replace ... with your PHP Object foreach($someObject as $key => $value) { echo $value->name . ", " . $value->gender . "
"
; } ?>

Lưu ý sự khác biệt trong việc truy cập các giá trị của một mảng so với một đối tượng.

Chuyển đổi mảng PHP hoặc đối tượng thành chuỗi JSON

PHP cũng có chức năng


  // JSON string
  $someJSON = '[{"name":"Jonathan Suh","gender":"male"},{"name":"William Philbin","gender":"male"},{"name":"Allison McKinnery","gender":"female"}]';

  // Convert JSON string to Array
  $someArray = json_decode($someJSON, true);
  print_r($someArray);        // Dump all data of the Array
  echo $someArray[0]["name"]; // Access Array data

  // Convert JSON string to Object
  $someObject = json_decode($someJSON);
  print_r($someObject);      // Dump all data of the Object
  echo $someObject[0]->name; // Access Object data
?>
6 để chuyển đổi một mảng hoặc đối tượng thành một chuỗi. Đọc thêm về chức năng

  // JSON string
  $someJSON = '[{"name":"Jonathan Suh","gender":"male"},{"name":"William Philbin","gender":"male"},{"name":"Allison McKinnery","gender":"female"}]';

  // Convert JSON string to Array
  $someArray = json_decode($someJSON, true);
  print_r($someArray);        // Dump all data of the Array
  echo $someArray[0]["name"]; // Access Array data

  // Convert JSON string to Object
  $someObject = json_decode($someJSON);
  print_r($someObject);      // Dump all data of the Object
  echo $someObject[0]->name; // Access Object data
?>
6 từ tài liệu PHP.


  // Array
  $someArray = [
    [
      "name"   => "Jonathan Suh",
      "gender" => "male"
    ],
    [
      "name"   => "William Philbin",
      "gender" => "male"
    ],
    [
      "name"   => "Allison McKinnery",
      "gender" => "female"
    ]
  ];

  // Convert Array to JSON String
  $someJSON = json_encode($someArray);
  echo $someJSON;
?>

Lưu ý rằng tôi đã sử dụng cú pháp mảng ngắn mà Lừa có trong Php 5.4+.


  $array = array(
    "foo" => "bar",
    "bar" => "foo"
  );

  // as of PHP 5.4
  $array = [
    "foo" => "bar",
    "bar" => "foo"
  ];
?>


Chuyển đổi chuỗi JSON sang đối tượng JavaScript

JavaScript có phương thức


  // JSON string
  $someJSON = '[{"name":"Jonathan Suh","gender":"male"},{"name":"William Philbin","gender":"male"},{"name":"Allison McKinnery","gender":"female"}]';

  // Convert JSON string to Array
  $someArray = json_decode($someJSON, true);
  print_r($someArray);        // Dump all data of the Array
  echo $someArray[0]["name"]; // Access Array data

  // Convert JSON string to Object
  $someObject = json_decode($someJSON);
  print_r($someObject);      // Dump all data of the Object
  echo $someObject[0]->name; // Access Object data
?>
8 tích hợp để phân tích chuỗi JSON và trả về một đối tượng.

<script>
  // Convert JSON String to JavaScript Object
  var JSONString = '[{"name":"Jonathan Suh","gender":"male"},{"name":"William Philbin","gender":"male"},{"name":"Allison McKinnery","gender":"female"}]';

  var JSONObject = JSON.parse(JSONString);
  console.log(JSONObject);      // Dump all data of the Object in the console
  alert(JSONObject[0]["name"]); // Access Object data
</script>


  // JSON string
  $someJSON = '[{"name":"Jonathan Suh","gender":"male"},{"name":"William Philbin","gender":"male"},{"name":"Allison McKinnery","gender":"female"}]';

  // Convert JSON string to Array
  $someArray = json_decode($someJSON, true);
  print_r($someArray);        // Dump all data of the Array
  echo $someArray[0]["name"]; // Access Array data

  // Convert JSON string to Object
  $someObject = json_decode($someJSON);
  print_r($someObject);      // Dump all data of the Object
  echo $someObject[0]->name; // Access Object data
?>
8 được hỗ trợ rất tốt, nhưng có những trình duyệt không hỗ trợ nó (tức là.

JQuery 1.x có phương pháp


  // Loop through Array
  $someArray = ...; // Replace ... with your PHP Array
  foreach ($someArray as $key => $value) {
    echo $value["name"] . ", " . $value["gender"] . "
"
; } // Loop through Object $someObject = ...; // Replace ... with your PHP Object foreach($someObject as $key => $value) { echo $value->name . ", " . $value->gender . "
"
; } ?>
0 sẽ điền vào các khoảng trống cho các trình duyệt đó nếu bạn cần hỗ trợ họ. Bạn cũng có thể sử dụng thư viện JSON-JS như một polyfill.

<script>
  // Convert JSON String to JavaScript Object with jQuery
  var JSONString = "..."; // Replace ... with your JSON String

  var JSONObject = $.parseJSON(JSONString);
  console.log(JSONObject);      // Dump all data of the Object in the console
  alert(JSONObject[0]["name"]); // Access Object data
</script>

Sau đó, bạn có thể lặp qua một đối tượng JavaScript bằng cách sử dụng vòng lặp


  // Loop through Array
  $someArray = ...; // Replace ... with your PHP Array
  foreach ($someArray as $key => $value) {
    echo $value["name"] . ", " . $value["gender"] . "
"
; } // Loop through Object $someObject = ...; // Replace ... with your PHP Object foreach($someObject as $key => $value) { echo $value->name . ", " . $value->gender . "
"
; } ?>
1.

<script>
  // Loop through Object
  var JSONObject = ...; // Replace ... with your JavaScript Object

  for (var key in JSONObject) {
    if (JSONObject.hasOwnProperty(key)) {
      console.log(JSONObject[key]["name"] + ", " + JSONObject[key]["gender"]);
    }
  }
</script>

Chuyển đổi đối tượng JavaScript thành Chuỗi JSON

JavaScript có phương thức


  // Loop through Array
  $someArray = ...; // Replace ... with your PHP Array
  foreach ($someArray as $key => $value) {
    echo $value["name"] . ", " . $value["gender"] . "
"
; } // Loop through Object $someObject = ...; // Replace ... with your PHP Object foreach($someObject as $key => $value) { echo $value->name . ", " . $value->gender . "
"
; } ?>
2 để chuyển đổi giá trị thành chuỗi JSON.

<script>
  var JSONObject = [
    {
      "name": "Jonathan Suh",
      "gender": "male"
    },
    {
      "name": "William Philbin",
      "gender": "male"
    },
    {
      "name": "Allison McKinnery",
      "gender": "female"
    }
  ];

  var JSONString = JSON.stringify(JSONObject);
  alert(JSONString);
</script>

Như


  // Loop through Array
  $someArray = ...; // Replace ... with your PHP Array
  foreach ($someArray as $key => $value) {
    echo $value["name"] . ", " . $value["gender"] . "
"
; } // Loop through Object $someObject = ...; // Replace ... with your PHP Object foreach($someObject as $key => $value) { echo $value->name . ", " . $value->gender . "
"
; } ?>
3,

  // Loop through Array
  $someArray = ...; // Replace ... with your PHP Array
  foreach ($someArray as $key => $value) {
    echo $value["name"] . ", " . $value["gender"] . "
"
; } // Loop through Object $someObject = ...; // Replace ... with your PHP Object foreach($someObject as $key => $value) { echo $value->name . ", " . $value->gender . "
"
; } ?>
2 không được hỗ trợ trong các trình duyệt khủng long như


Bạn có thể kết hợp các phương thức trên để tạo các triển khai mạnh mẽ, động trên trang web hoặc ứng dụng của bạn.

Hãy nói rằng bạn muốn lấy thông tin từ cơ sở dữ liệu, trả lại một cách an toàn dữ liệu dưới dạng JSON và lặp qua nó một cách linh hoạt, bạn có thể làm như vậy với một chút PHP và JavaScript với AJAX.

Động lực lấy JSON qua Ajax và Loop qua JSON

Hãy giả sử cấu trúc cơ sở dữ liệu của bạn trông giống như sau:

Table: people
┌────┬────────────────────┬─────────┐
| id | name               | gender  |
├────┼────────────────────┼─────────┤
| 0  | Jonathan Suh       | male    |
| 1  | William Philbin    | male    |
| 2  | Allison McKinnery  | female  |
| 3  | Becky Borgster     | female  |
| 4  | Victoria Einsteen  | female  |
└────┴────────────────────┴─────────┘

Và bạn muốn tự động lấy danh sách những người từ cơ sở dữ liệu dựa trên giới tính, như thế này:

Hướng dẫn json convert to array php - json chuyển đổi sang mảng php

Hãy để bắt đầu với tệp front-end


  // Loop through Array
  $someArray = ...; // Replace ... with your PHP Array
  foreach ($someArray as $key => $value) {
    echo $value["name"] . ", " . $value["gender"] . "
"
; } // Loop through Object $someObject = ...; // Replace ... with your PHP Object foreach($someObject as $key => $value) { echo $value->name . ", " . $value->gender . "
"
; } ?>
6 rằng sẽ có một bản thả xuống chọn với các giới tính để chọn từ, một bảng để hiển thị kết quả và tập lệnh để xử lý AJAX. JavaScript được viết bằng jQuery.


  // JSON string
  $someJSON = '[{"name":"Jonathan Suh","gender":"male"},{"name":"William Philbin","gender":"male"},{"name":"Allison McKinnery","gender":"female"}]';

  // Convert JSON string to Array
  $someArray = json_decode($someJSON, true);
  print_r($someArray);        // Dump all data of the Array
  echo $someArray[0]["name"]; // Access Array data

  // Convert JSON string to Object
  $someObject = json_decode($someJSON);
  print_r($someObject);      // Dump all data of the Object
  echo $someObject[0]->name; // Access Object data
?>
0

Bây giờ, hãy để tạo ra một tệp


  // Loop through Array
  $someArray = ...; // Replace ... with your PHP Array
  foreach ($someArray as $key => $value) {
    echo $value["name"] . ", " . $value["gender"] . "
"
; } // Loop through Object $someObject = ...; // Replace ... with your PHP Object foreach($someObject as $key => $value) { echo $value->name . ", " . $value->gender . "
"
; } ?>
7 để xử lý logic back-end để lấy thông tin từ cơ sở dữ liệu và trả về kết quả dưới dạng chuỗi JSON.


  // JSON string
  $someJSON = '[{"name":"Jonathan Suh","gender":"male"},{"name":"William Philbin","gender":"male"},{"name":"Allison McKinnery","gender":"female"}]';

  // Convert JSON string to Array
  $someArray = json_decode($someJSON, true);
  print_r($someArray);        // Dump all data of the Array
  echo $someArray[0]["name"]; // Access Array data

  // Convert JSON string to Object
  $someObject = json_decode($someJSON);
  print_r($someObject);      // Dump all data of the Object
  echo $someObject[0]->name; // Access Object data
?>
1

Để có được một ví dụ sâu hơn và tốt hơn về tương tác php-json-javascript/jQuery-ajax, hãy đọc cuộc gọi jQuery Ajax của tôi đến tập lệnh PHP với bài đăng trở lại của JSON.

Trước Sau
Hướng dẫn json convert to array php - json chuyển đổi sang mảng php

Tôi là một nhà phát triển & thiết kế đa ngành. Tôi hiện đang ở với những người ở Trung tâm Kế hoạch, và tôi đã làm việc với các thương hiệu và cơ quan nổi tiếng, bao gồm Allstate, Brian Hoff Design, Leo Burnett và Olson. Thêm về tôi.

Làm thế nào để chuyển đổi dữ liệu JSON thành mảng bằng PHP?

Để chuyển đổi chuỗi dữ liệu JSON thành mảng PHP, bạn có thể sử dụng hàm json_decode (). Hàm json_decode () chấp nhận chuỗi JSON là tham số đầu tiên và một vài tham số bổ sung để kiểm soát quá trình chuyển đổi JSON thành mảng PHP.use the json_decode() function. The json_decode() function accepts the JSON string as the first parameter and a few additional parameters to control the process of converting JSON to PHP array.

Làm thế nào để chuyển đổi định dạng JSON thành mảng?

Chuyển đổi chuỗi JSON sang mảng PHP hoặc đối tượng PHP> = 5.2.0 có chức năng, JSON_DECODE, giải mã chuỗi JSON thành biến PHP.Theo mặc định, nó trả về một đối tượng.Tham số thứ hai chấp nhận một boolean khi được đặt là đúng, hãy yêu cầu nó trả về các đối tượng dưới dạng mảng kết hợp.PHP >= 5.2. 0 features a function, json_decode , that decodes a JSON string into a PHP variable. By default it returns an object. The second parameter accepts a boolean that when set as true , tells it to return the objects as associative arrays.

Làm thế nào để chuyển đổi mảng JSON thành chuỗi trong PHP?

Sử dụng hàm json_encode () để chuyển đổi một mảng thành một chuỗi để chuyển đổi một mảng thành một chuỗi, một trong những cách phổ biến để làm điều đó là sử dụng hàm json_encode () được sử dụng để trả về biểu diễn JSON của giá trị.Hàm này lấy bất kỳ giá trị nào làm đầu vào ngoại trừ tài nguyên. to convert an Array to a string To convert an array to a string, one of the common ways to do that is to use the json_encode() function which is used to returns the JSON representation of a value. This function takes any value as input except resource.

Chức năng json_encode trong PHP là gì?

Hàm json_encode () có thể trả về một chuỗi chứa biểu diễn JSON của giá trị được cung cấp.Mã hóa bị ảnh hưởng bởi các tùy chọn được cung cấp, và ngoài ra, việc mã hóa các giá trị phao phụ thuộc vào giá trị của serialize_precision.return a string containing the JSON representation of supplied value. The encoding is affected by supplied options, and additionally, the encoding of float values depends on the value of serialize_precision.