Open Source/plain-to-class/Расширенное использование/Стиль написания
Стиль написания
Постоянная проблема со стилем написания, например, в базе данных это snake_case, а в коде camelCase. И их постоянно нужно как-то трансформировать. Пакет позаботится об этом, вам просто нужно указать атрибут WritingStyle в свойстве:
class WritingStyleSnakeCaseDTO{ #[WritingStyle(WritingStyle::STYLE_CAMEL_CASE, WritingStyle::STYLE_SNAKE_CASE)] public string $contact_fio;
#[WritingStyle(WritingStyle::STYLE_CAMEL_CASE)] public string $contact_email;}
$data = [ 'contactFio' => 'yzen.dev', 'contactEmail' => 'test@mail.com',];$model = ClassTransformer::transform(WritingStyleSnakeCaseDTO::class, $data);var_dump($model);Результат:
object(WritingStyleSnakeCaseDTO) (2) { ["contact_fio"]=> string(8) "yzen.dev" ["contact_email"]=> string(13) "test@mail.com"}