我在table中为用户Moodle获取数据
$data[] = $view-look;
$data[] = $view->tyres;
$data[] = $view->insidelook;
$data[] = $review->motor;数据用于每列中的status。状态从bad (1)、good(2)、very good (3)到superb(4)都是相同的。
现在只显示数字。如何显示,而不是数字,坏,好等为每一列?
发布于 2016-06-08 10:11:25
最简单的方法
$data = [1,1,1,2,4,2,3,3,1,3,3,2];
$mapping = [1 => 'bad', 2 => 'good', 3 => 'very good', 4 => 'superb'];
foreach ($data as $key => $value) {
$data[$key] = $mapping[$value];
}您将得到与文本内容相同的数组$data,而不是数字。
发布于 2016-06-08 09:58:28
您可以使用开关语句或if语句。这真的取决于你。我不知道用于状态的变量是什么,所以我假设它的$status。
switch($status) {
case 1:
$status_text = "bad"
break;
case 2:
$status_text = "good"
break;
case 3:
$status_text = "very good"
break;
case 4:
$status_text = "superb"
break;
// Have a default value just in case.
default:
$status_text = "not set"
break;
}
// Add it to the data array.
$data[] = $status_text;发布于 2016-06-08 10:07:14
这是一个简短的解决方案,装入一个关联数组(符号表),并获取与每个数字对应的文本。
$statuses = array(
"1" => "bad",
"2" => "good",
"3" => "very good",
"4" => "superb"
);
$data[] = $statuses[$status];https://stackoverflow.com/questions/37698997
复制相似问题