trait 키워드
trait 키워드는 PHP에서 코드 재사용 메커니즘인 트레이트를 생성하는 데 사용됩니다. 트레이트는 클래스와 유사하지만, 작고 이해하기 쉬운 단위로 기능을 그룹화하기 위한 것입니다. use 키워드를 사용하여 클래스에 트레이트를 포함시킬 수 있습니다.
문법
trait TraitName {
// 트레이트의 속성과 메서드
public function method1() {
// 구현
}
}
예제
간단한 트레이트를 생성하고 클래스에 포함시켜 봅시다:
<?php
trait Logger {
public function log($message) {
echo "Logging: " . $message;
}
}
class User {
use Logger;
}
$user = new User();
$user->log("User created");
?>
코드 실행 결과:
'Logging: User created'
예제
하나의 클래스가 여러 트레이트를 동시에 사용할 수 있습니다:
<?php
trait Timestamp {
public function getCurrentTime() {
return date('Y-m-d H:i:s');
}
}
trait Serializer {
public function toJson($data) {
return json_encode($data);
}
}
class Product {
use Timestamp, Serializer;
}
$product = new Product();
echo $product->getCurrentTime();
?>
코드 실행 결과:
'2023-11-15 14:30:00'