[英]Displaying array from javascript in php
我有一個我在 javascript 中制作的數組,有 2 列 id 和數量
items.push({
id : id,
quantity: quantity
})
然后我使用 stringify 將其變成 jsonstring,如圖所示
var jsonString = JSON.stringify(items);
$.ajax({
type: "POST",
url: "order_process.php",
data: {data : jsonString},
cache: false,
success: function(){
window.location.href = "order_confirmation.php";
}
});
然后我將其發布到 php 並使用 json_decode 將其轉換為 php 數組。 如圖所示
$_SESSION['cart'] = json_decode( $_POST['data'] );
問題是當我在 php 中使用 print_r() function 時,這是我得到的 output
Array (
[0] => stdClass Object ( [id] => 12 [quantity] => 1 )
[1] => stdClass Object ( [id] => 13 [quantity] => 1 )
[2] => stdClass Object ( [id] => 10 [quantity] => 1 )
)
我想要的output如下圖,但是我不知道怎么格式化所以得到如圖
ID | 數量 |
---|---|
12 | 1 |
13 | 2 |
任何幫助將非常感激
使用true
作為json_decode()
的第二個參數來獲取數組而不是 object。 然后循環創建你的表:
$_SESSION['cart'] = json_decode( $_POST['data'], true );
echo '<table><tr><th>ID</th><th>Quantity</th></tr>';
foreach ($_SESSION['cart'] as $item) {
echo '<tr><td>'.$item['id'].'</td><td>'.$item['quantity'].'</td></tr>';
}
echo '</table>';
您在 JS 中所做的並不是創建與在 PHP 中相同的關聯數組。
您實際上正在執行 JSON 解碼時得到的結果:您推送(附加到數組)具有兩個屬性的 object(大括號)。
您可以對 PHP 中的 output 陣列執行的操作是:
無論如何,您都需要知道如何使用 HTML 包裝數據,這樣您才能真正顯示表格。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.