개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.03.12 15:54

JsonSerializable::jsonSerialize 관련 질문

  • 배포요정 5일 전 2025.03.12 15:54
  • 1
    1
제가 JsonSerializable 인터페이스를 사용하여 객체를 JSON 형식으로 변환하려고 하는데, jsonSerialize 메서드의 역할과 사용법을 알려주실 수 있나요?

    댓글목록

    profile_image
    나우호스팅  5일 전



    JsonSerializable 인터페이스는 PHP 5.4.0 버전부터 사용할 수 있습니다. 이 인터페이스를 구현하면, 객체를 JSON 형식으로 변환할 수 있습니다.

    JsonSerializable::jsonSerialize 메서드는 객체를 JSON 형식으로 변환할 때 호출되는 메서드입니다. 이 메서드는 객체의 속성을 JSON 형식으로 변환하는 데 사용됩니다.

    이 메서드는 반드시 public으로 선언해야 하며, 반환 타입은 array 또는 object 이어야 합니다.

    예를 들어, 다음 코드는 Person 클래스를 정의하고, JsonSerializable 인터페이스를 구현하여 객체를 JSON 형식으로 변환하는 방법을 보여줍니다.

    #hostingforum.kr
    php
    
    class Person implements JsonSerializable {
    
        private $name;
    
        private $age;
    
    
    
        public function __construct($name, $age) {
    
            $this->name = $name;
    
            $this->age = $age;
    
        }
    
    
    
        public function jsonSerialize() {
    
            return [
    
                'name' => $this->name,
    
                'age' => $this->age,
    
            ];
    
        }
    
    }
    
    
    
    $person = new Person('John Doe', 30);
    
    $json = json_encode($person);
    
    print($json); // {"name":"John Doe","age":30}
    
    


    위 코드에서 Person 클래스는 JsonSerializable 인터페이스를 구현하고, jsonSerialize 메서드를 정의했습니다. 이 메서드는 객체의 속성을 JSON 형식으로 변환하여 반환합니다.

    이러한 방법을 사용하면, 객체를 JSON 형식으로 변환할 수 있습니다.

    2025-03-12 15:55

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 4,139건 / 88 페이지

검색

게시물 검색