его даже удобнее использовать вместо if-elseif-else
Я и switch то не особо юзал 😄
If, elseif, elseif....?
Я имею ввиду до match
Elseif Избегал таких конструкций тоже
If If If If...? ))
Я помню ты else-if конструкции не любишь
$bar = 'ololo'; $foo = [ 'case1' => 'bar', 'case2' => 'baz', 'case3' => 'hello world', ][$bar] ?? 'default value'; swtich вместо матча и до этого был не нужен
Да, с дроблением по методам. Public function method(string $type) { if ($type === 'one') { return $this->methodOne(); } if( $type === 'two') { return $this->methodTwo(); } return $this->methodDefault(); } Четко if - четко результат метода.
я вдруг понял, что если из "кейса" вернется null, то вся эта конструкция будет работать не правильно
так и задумывалось же
Сорян, то я без кофе key и value спутал
это типа $foo = match ($bar) { 'case1' => 'bar', 'case2' => 'baz', 'case3' => 'hello world', default => 'default value', };
Да, для мелочи самое то, для комбинированных значений не очень зайдет, у матча в этом плане выйгрышь есть. Например: match ($bar) { 'case1', 'case2' => 'case', default => 'default', } Или match($bar) { $this->isCase() => 'case', default => 'default' }
согласен, match интересней, но мой вариант все еще компактней свитча или пачки ифов
Обсуждают сегодня