2012-03-19 69 views
3

在PHP中尋找一種優雅的方法來接收變量,然後輸出兩個預設值。if語句在PHP中輸出變量的優雅替代者

而不是使用下面的一系列if語句,想知道是否有更優雅的解決方案。

例子:

if ($edit_array[1] == job) { 
$table = 'jobs'; $id = 'job_id'; 
} 
+0

這個例子太小了。寫條件邏輯有很多不同的方式,都有不同的優缺點。什麼最適合這種情況取決於你表現得很少的情況。 – deceze 2012-03-19 04:10:47

回答

3

如果你有一堆的IFS/elseifs嘗試switch

switch($edit_array[1]) { 
    case 'job': 
     $table = 'jobs'; 
     $id = 'job_id'; 
    default: 
    ... 
} 

或有時一個簡單的 「配置」 陣列替換它們的工作原理

$job_config = array(
    'job' => array(
     'table' => 'jobs', 
     'id' => 'job_id' 
    ) 
); 

$job_info = $job_config[$edit_array[1]]; 
+0

非常感謝。開關示例是完美的,因爲我只想要所選案例的變量。 – jsuissa 2012-03-19 04:35:34

+0

還記得永遠有用的「提取」命令...如果你想要設置實際變量,只需從$ job_config中提取相關行 – Andy 2012-03-19 05:02:30