4

シナリオ

$type_id変数が特定の ID セットの 1 つであるかどうかを確認する必要があります。

読みやすさ以外の理由で、私は一緒に行きました

switch($type_id) {
    case Type::SOME_TYPE:
    case Type::SOME_OTHER_TYPE:
    ...
        //do stuff

それらのほとんどは一般的なケースにカスケードします。

しかし、これにより、PHPMD が泣き言を言い始めるところまで循環的複雑さが増します。

in_array()だから私は考えました、代わりに使用しましょう。

if (in_array($type_id, [
    Type::SOME_TYPE,
    TYPE::SOME_OTHER_TYPE,
    ...
    ])) {
    //do stuff
}

質問

この時点で、PHPMD は不平を言うのをやめましたが、in_array()関数の背後に隠れているだけで、循環的複雑性がまだ残っているのではないでしょうか?

4

1 に答える 1