【发布时间】:2015-03-12 04:43:06
【问题描述】:
我的问题是这样的
我有一个数据库,它在“状态”行中存储 int 值,我想表示某些订单状态:
0 = 已提交
1 = 交付等。
我想要实现的是显示上面示例中的某些文本而不是 int 值
我的显示整个列表的代码是
require 'database_connection.php';
$select_orders = "SELECT username, status, product1_num, product2_num FROM orders";
$result = mysql_query($select_orders);
<ol class="order_list">
<?php while ($order = mysql_fetch_array($result)) {
$order_row = sprintf("<li class='single_order %s'>
<ul>
<li class='username'>%s</li>
<li class='status'>%s</li>
<li class='product'>%s</li>
<li class='product'>%s</li>
</ul>
</li>",
$order['status'], $order['username'], $order['status'], $order['product2_num'], $order['product1_num']);
echo $order_row;
}
?>
</ol>
我尝试在 sprintf 中使用 if 语句,但没有成功。
有谁知道如何从这里更改显示的代码
<li class="status">3</li>
到
<li class="status">Delivered</li>
?
【问题讨论】:
-
为什么不使用另一个变量在 sprintf 之外执行 if 语句。像 $dummy = $order['status'] 然后将其用于 sprintf