php自定义sql返回值

标签 php mysql sql database

我有一个数据表,其中从 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/

相关文章:

php - MySQL 设计说明

mysql - 即使没有任何匹配项,JOIN 如何工作

mysql - 如何输入null是SQL

c# - sql分组依据的使用方法

mysql - 如何在同一查询中获取返回行数和数据的 count()

php - addClass 不适用于 laravel 5 中搜索功能的动态列表项

php - 在模板 Mustache.php 中包含模板

php - 如果每一行都有不同的模式,则加载数据本地文件

php - 使用 jquery 和 php 检查登录表单并显示错误消息

php - 学说条件连接