【发布时间】:2013-12-29 13:59:36
【问题描述】:
我正在做一个简单的购物应用程序,用户可以根据书名、价格、数量等从商店中选择书籍。目前书籍的所有详细信息都保存在一个关联数组中,如下所示:
$menu = array(
array ('id' => '1', 'catagory' => 'newbooks','title' => 'Alex','price' => 4.95, 'desc' => 'bbbb'),
array('id' => '2','catagory' => 'newbooks','title' => 'David ','price' => 5.95, 'desc' => 'sss'),);
}
我想要实现的是合并或删除重复的书籍 ID 条目,而且每本书的标题都将打印在包含“标题”、“ID”、“价格”的单行中
例如:
-
Alex qty:2 price 4.95 -
David qty:2 price 5.95等等……
这是我的购物车文件:
$buy = array();
$qty = 0;
$total = 0;
foreach ($_SESSION['buy'] as $id) {
foreach ($menu as $book ) {
if ($book['id'] == $id) {
$buy[] = $book;
$total += $book['price'];
}
}
}
}
if (count($buy) > 0)
if (count($book) > 0)
{
echo"<table>";
echo"<tr><th>Item Description</th><th>Quantity</th><th>Price</th></tr>";
foreach ($buy as $book){
$f_price = sprintf("%0.2f", $book["price"]);
echo"<tr><td>" .$book["title"] ."</td>";
echo"<td>" .$qty."</td><";
echo"<td>" .$f_price."</td></tr>";
}
echo"<tr><td>Total</td><td>".$total."</td></tr>";
echo"</table>";
}
我将非常感谢任何帮助或建议,因为我花了很长时间尝试使用独特的函数来解决这个问题,for 语句 foreach 循环但徒劳无功,我仍然是新手,也请尽量宽容一点。干杯!
【问题讨论】:
-
array_unique() 怎么样? php.net/manual/en/function.array-unique.php
-
@Calimero array_unique 有什么帮助?
-
查看array_count_values() php.net/manual/en/function.array-count-values.php
标签: php arrays associative-array