2017-10-19 90 views
0

以下是原始代碼中使用怎樣的if else嵌套

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完整的結果= text_0 並以此類推,直到_text_6

我希望這是有道理的

回答

1

您可以通過電子郵件mbed的$param_value的鍵名,你在$sensor使用:

$result['value'] = $param_value; 
$result['value_full'] = $sensor["text_$param_value"]; 

...所以沒有if ($param_value === 1) ... else if ($param_value === 2) ....

+0

良好的解碼。 :) – Barmar

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];