PHP改变数据库的输出

Dan*_*nte 3 php

我正在创建一个显示在表格中的计算机清单网站.我正在尝试更改输出显示,例如以下内容

echo "<td>".$row['WindowsVersion']."</td>\n";
Run Code Online (Sandbox Code Playgroud)

显示5.0或5.1或5.2或6.0或6.1

但我想要它显示

5.0 as 2000
5.1 as XP
5.2 as 2003
6.0 as Vista
6.1 as 7
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激

小智 6

您始终可以使用Windows版本作为此类的密钥创建预定义的阵列.

$win_ver = array('5.0' => '2000','5.1' => 'XP');

echo $win_ver[$row['WindowsVersion']];
Run Code Online (Sandbox Code Playgroud)


Boo*_*eus 6

数据库版本:

SELECT
    CASE WindowsVersion
    WHEN '5.0' THEN '2000'
    WHEN '5.1' THEN 'XP'
    WHEN '5.2' THEN '2003'
    WHEN '6.0' THEN 'Vista'
    ELSE '7' AS WindowsVersion
FROM ...
Run Code Online (Sandbox Code Playgroud)

还是PHP

<?php
function getWinName($win) {
    switch($win) {
        case '5.0': $version = '2000'; break;
        case '5.1': $version = 'XP'; break;
        case '5.2': $version = '2003'; break;
        case '5.0': $version = 'Vista'; break;
        default: $version = '7';
    }
    return $version;
}

echo "" . getWinName($row['WindowsVersion']) . "\n";
Run Code Online (Sandbox Code Playgroud)


mar*_*rio 5

在这种情况下,您可以使用数组作为显示/重写映射:

$rewrite = array(
  "5.0" => "2000",
  "5.1" => "XP",
  ..
);

print $rewrite[ $row['WindowsVersion'] ];
Run Code Online (Sandbox Code Playgroud)

它只是将您的原始值用作重写数组中的索引键,并为您获取相关的替代值.