我有一个数据表,其中从 sql 查询返回值。现在有一个问题。我想返回的不是实际的 sql 值,而是与 sql 值 db 匹配的自定义参数。例如,我有一个状态值,在 sql 数据库中描述为 D - 完成、N - 新、P - 正在进行。所以在数据表中我想看到这些值而不是这三个字母。我的php代码片段:
$data = "";
$array = db_get_task();
if ($array != null)
{
for ($i = 0; $i < count($array); $i++)
{
$data .= '<tr>
<td>' . $array[$i]['task'] . '</td>
<td>' . $array[$i]['id'] . '</td>
<td>' . $array[$i]['cust'] . '</td>
<td>' . $array[$i]['City'] . '</td>
<td>' . $array[$i]['STATE'] . '</td> //this line returns D, N or P values
<td>' . $array[$i]['date'] . '</td>
</tr>';
}
}
顺便说一下。在数据库中这些字母使用varchar类型
最佳答案
试试这个
$data = "";
$values = array('D' => 'done', 'N' => 'new', 'P' => 'in progress');
$array = db_get_task();
if ($array != null)
{
for ($i = 0; $i < count($array); $i++)
{
$data .= '<tr>
<td>' . $array[$i]['task'] . '</td>
<td>' . $array[$i]['id'] . '</td>
<td>' . $array[$i]['cust'] . '</td>
<td>' . $array[$i]['City'] . '</td>
<td>' . $values[$array[$i]['STATE']] . '</td> //this line returns done, new or in progress values
<td>' . $array[$i]['date'] . '</td>
</tr>';
}
}
关于php自定义sql返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23980302/