laravel Collection's When Method

개인적으로 라라벨 코딩 시 query, collection 작업에 if 문 보다 when을 사용하는 게 더 가독성이 좋다라고 생각해서 굉장히 자주 사용하는 편이다.

그래서 그런지 코딩하다가 when의 구현부는 어떤 식으로 작성되어 있는지 문뜩 궁금해져 찾아보았다.

 

/**
 * Apply the callback if the value is truthy.
 *
 * @param  bool  $value
 * @param  callable  $callback
 * @param  callable  $default
 * @return mixed
 */
public function when($value, callable $callback, callable $default = null)
{
    if ($value) {
        return $callback($this, $value);
    } elseif ($default) {
        return $default($this, $value);
    }

    return $this;
} 

 

  • share