我有一个数据表,其中我从sql查询返回值。现在有一个问题。我想返回不是实际的sql值,而是返回与sql值db匹配的custum参数。例如,我有一个状态值,在sql数据库中描述为D - done,N - new,P - 正在进行中。所以在datable表中我想看到这些值而不是这三个字母。我的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类型
答案 0 :(得分:0)
试试这个
$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>';
}
}
答案 1 :(得分:0)
<强>尝试:强>
$states = array('D' => 'done', 'N' => 'new', 'P' => 'in progress');
$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>' . if(array_key_exists($array[$i]['STATE'], $states) { $states[$array[$i]['STATE']]; }. '</td>
<td>' . $array[$i]['date'] . '</td>
</tr>';
}
}
的说明:强>
为所有 custom associative array
创建 states
。如果 value
(即D,N,P)作为key
中的 array
存在,请获取<强> value
强>