게터(QueryBuilder15)


Getter

Db 클래스는 getter 정의도 지원할 수 있습니다. 예:

Db::name('user')->withAttr('name', function($value, $data) {
	return strtolower($value);
})->select();

getter 메서드는 두 개의 매개변수 전달을 지원합니다. 첫 번째 매개변수는 현재 필드의 값이고 두 번째 매개변수는 모두 데이터.

위 코드에서는 쿼리된 데이터 세트의 이름 필드 값이 일률적으로 소문자로 변환됩니다.

withAttr 메소드는 여러 필드에 대한 getter를 정의하기 위해 여러 번 호출될 수 있습니다.

JSON 필드에 대한 getter 정의를 지원합니다. 예:

$user = Db::name('user')
	->json(['info'])
    ->withAttr('info.name', function($value, $data) {
        return strtolower($value);
    })->find(1);
dump($user);

쿼리 결과가 반환되면 정보 필드(JSON 필드)의 이름 속성에 getter 작업이 자동으로 사용됩니다.