如何使用PHP打印多维数组?
我有一个PHP数组,它将被保存到如何使用PHP打印多维数组?,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,我有一个PHP数组,它将被保存到$\u会话中。我希望以适当的可读格式和表格形式输出数组 我尝试将数组内容检查为print\r($\u SESSION['post-data']),输出为 Array ( [jcart_item_name] => Array ( [0] => Choley Bhature [1] => Onion Kulcha with Chana and Raita [2] => Dal Makhani ) [jcart_item_id] => A
$\u会话中。我希望以适当的可读格式和表格形式输出数组
我尝试将数组内容检查为print\r($\u SESSION['post-data'])
,输出为
Array ( [jcart_item_name] => Array ( [0] => Choley Bhature [1] => Onion Kulcha with
Chana and Raita [2] => Dal Makhani ) [jcart_item_id] => Array ( [0] => 1 [1] =>
5 [2] => 6 ) [jcart_item_price] =>Array ( [0] => 85 [1] => 90 [2] => 105 )
[jcart_item_qty] => Array ( [0] => 3 [1] => 1 [2] => 1[jcart_checkout] => PlaceOrder)
我只想以下面的格式输出jcart\u项目名称
,jcart\u项目数量
和jcart\u项目价格
Item Name Item Qty Item Price
--------------------------------------
Choley Bhature 3 50
尝试将此数组划分为几个数组,例如:jcart_item_name、jcart_item_quantity和jcart_item_price是三个数组。然后,由于数组的大小相同,可以使用函数count()
或sizeof()
获取大小。然后你会得到:
//现在我们有了这三个数组
$1//jcart_item_名称数组
$2//jcart_物料_数量数组
$3//jcart_项目_价格数组
$size = sizeof($arr1); //all arrays size is the same
for ($i=0; $i < $size; $i++) {
//DO WHAT YOU WANT
echo $arr1[$i]."<br>";
echo $arr2[$i]."<br>";
echo $arr3[$i]."<br>";
}
$size=sizeof($arr1)//所有数组的大小都相同
对于($i=0;$i<$size;$i++){
//做你想做的
回声$arr1[$i]。“
”;
回声$arr2[$i]。“
”;
回声$arr3[$i]。“
”;
}
听起来很好吃…
数组是否需要关联
<?php
$myArray = Array (
Array ( 1, 5, 6),
Array ('Choley Bhature', 'Onion Kulcha with Chana and Raita', 'Dal Makhani'),
Array (3, 1, 1),
Array (85, 90, 105));
echo "<table><tr><td>Id</td><td>Item Name</td><td>Qty.</td><td>Price</td></tr><br/>";
for ($j=0; $j<count($myArray[0]); $j++){
echo "<tr><td>".$myArray[0][$j]."</td><td>".$myArray[1][$j]."</td><td>".$myArray[2][$j]."</td><td>".$myArray[3][$j]."</td>";
}
echo "</table>";
?>
我相信您可以自己进行格式化,但这就是您获取所需值的方式
foreach($_SESSION['jcart_item_name'] as $key => $item) {
echo $item . ' - ' . $_SESSION['jcart_item_qty'][$key] . ' - ' . $_SESSION['jcart_item_price'][$key] . '<br>';
}
这样,for可以在$\u会话['jcart\u items']上执行一个简单的foreach循环,而且可读性更强
foreach($_SESSION['jcart_items'] as $k => $item) {
echo $item['name'] . ' - ' . $item ['qty'] . ' - ' . $item['price'] . '<br>';
}
foreach($\u会话['jcart\u items']作为$k=>$item){
回显$item['name'].-'.$item['qty'.-'.$item['price'.]。
;
}
pro提示:在打印/转储对象和数组时使用标记以使它们打印得漂亮:)$array['jcart\u item\u name'][0]$数组['jcart_item_name'][0]$数组['jcart_item_qty'][0];等等我想知道的是在一个循环中。。。你告诉我的方式已经尝试过了
foreach($_SESSION['jcart_items'] as $k => $item) {
echo $item['name'] . ' - ' . $item ['qty'] . ' - ' . $item['price'] . '<br>';
}