我正在研究一些我自己没有写过的代码示例,我发现这个函数看起来像是写得不好,或者至少效率不高。你能提出改进方法吗?我认为这可能适用于关联数组,但不知道如何。
可以重写其他任何方式吗?
$op = '';
switch($style) {
case 'f':
case 'F': {
$op = 'f';
break;
}
case 'f*':
case 'F*': {
$op = 'f*';
break;
}
case 'B':
case 'FD':
case 'DF': {
$op = 'B';
break;
}
default: {
if (!empty($default)) {
$op = $this->dosomething($default, '');
} else {
$op = '';
}
}
}
return $op;
答案 0 :(得分:3)
要使用关联数组,您需要执行以下操作:
$styles = array(
'S' => 'S',
'D' => 'S',
's' => 's',
'd' => 's',
... etc ...
);
if (isset($styles[$op])) {
return $styles[$op];
} elseif (!empty($default)) {
return $this->getPathPaintOperator($default, '');
} else {
return '';
}
答案 1 :(得分:0)
无需添加额外的花括号,您可以更改
case 'df': {
$op = 'b';
break;
}
到
case 'df':
$op = 'b';
break;