我有以下功能:刪除switch語句
private function generateStructureArray($file) {
$splitData = explode('/', $file);
switch(count($splitData)) {
case 1:
$this->hierarchy[] = $splitData[0];
break;
case 2:
$this->hierarchy[$splitData[0]][] = $splitData[1];
break;
case 3:
$this->hierarchy[$splitData[0]][$splitData[1]][] = $splitData[2];
break;
case 4:
$this->hierarchy[$splitData[0]][$splitData[1]][$splitData[2]][] = $splitData[3];
break;
case 5:
$this->hierarchy[$splitData[0]][$splitData[1]][$splitData[2]][$splitData[3]][] = $splitData[4];
break;
}
引擎收錄版本:http://pastebin.com/B9vU38nY
我想知道是否有可能去除switch語句此功能,同時還具有相同結果。 $ splitData的大小有時可能超過20,並且20個case switch語句看起來很醜並且錯誤。我對PHP有相當不錯的知識,但到目前爲止,我無法想出一個方法來實現這個功能。
你不能只是做一個foreach超過$ splitData()循環? – 2014-03-04 20:10:23