>  기사  >  백엔드 개발  >  개별 필드의 마샬링 동작을 변경하면서 타사 패키지의 구조를 재사용하려면 어떻게 해야 합니까?

개별 필드의 마샬링 동작을 변경하면서 타사 패키지의 구조를 재사용하려면 어떻게 해야 합니까?

PHPz
PHPz앞으로
2024-02-10 08:18:081015검색

개별 필드의 마샬링 동작을 변경하면서 타사 패키지의 구조를 재사용하려면 어떻게 해야 합니까?

PHP 편집자 Zimo는 타사 패키지의 구조를 재사용하고 단일 필드의 마샬링 동작을 변경하는 방법에 대한 팁을 공유하기 위해 왔습니다. 타사 패키지를 사용할 때 때로는 패키지의 필드를 사용자 정의해야 할 때가 있습니다. 이 기사에서는 상속과 덮어쓰기를 통해 이 목표를 달성할 수 있는 간단한 방법을 소개합니다. 이 방법은 원래 구조를 재사용할 수 있을 뿐만 아니라 개인화된 요구 사항도 충족할 수 있습니다. 다음으로 구체적인 구현 방법을 살펴보겠습니다!

질문 내용

구조체를 YAML로 마샬링하려고 하는데 구조체에 변경하려는 태그를 제외하고 이미 모든 YAML 태그가 정의되어 있다고 가정해 보겠습니다. 구조 자체를 변경하지 않고 이 단일 필드의 동작을 어떻게 변경할 수 있습니까? 구조가 타사 패키지에서 온다고 가정합니다.

여기에 보여드릴 예시와 최선의 시도가 있습니다. User 结构(及其关联的 Secret 구조)가 타사 패키지에서 제공되므로 수정할 수 없다고 가정합니다.

으아악

위 코드에 대한 Go Playground 링크는 다음과 같습니다. https://go.dev/play/p/ojiPv4ylCEq

해결 방법

단순히 불가능합니다.

당신의 '최선의 시도'가 옳은 길입니다.

위 내용은 개별 필드의 마샬링 동작을 변경하면서 타사 패키지의 구조를 재사용하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 stackoverflow.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제