以下是原始代码
else if ($sensor['result_type'] == 'logic')
{
if($param_value == 1)
{
$result['value'] = $param_value;
$result['value_full'] = $sensor['text_1'];
}
else
{
$result['value'] = $param_value;
$result['value_full'] = $sensor['text_0'];
}
}
else if ($sensor['result_type'] == 'value')
{
我想将结果增加到6个文本结果
因此,根据传感器输出,它将选择正确的结果 是传感器结果值= 0 full result = text_0 等等_text_6
我希望这是有道理的
答案 0 :(得分:1)
您可以将$param_value
嵌入$sensor
中使用的密钥名称中:
$result['value'] = $param_value;
$result['value_full'] = $sensor["text_$param_value"];
...所以没有if ($param_value === 1) ... else if ($param_value === 2) ....
答案 1 :(得分:0)
您可以在此处使用开关,例如
switch ($param_value) {
case 1:
$result['value'] = $param_value;
$result['value_full'] = $sensor['text_1'];
break;
case 2:
$result['value'] = $param_value;
$result['value_full'] = $sensor['text_2'];
break;
}
我不确定这是否是您正在寻找的,但您的问题并不确定。
您也可以执行以下操作
$result['value'] = $param_value;
$result['value_full'] = $sensor['text_' + (string)$param_value];