PHP Class → JSON Schema 생성기

PHP 코드 입력

에디터 로드 중…

JSON Schema 출력

설정

스키마 생성 시 루트로 사용할 PHP class를 선택하세요.

파싱은 브라우저에서 로컬로만 수행됩니다. 소스 코드는 페이지를 떠나지 않습니다.

PHP class를 붙여넣어 즉시 JSON Schema를 생성하세요.

타입 힌트, DocBlock 주석, nullable/union 타입, 배열, 연관 map을 지원합니다.

PHP class → JSON Schema 변환 방법 – 단계별 가이드

이 온라인 PHP class → JSON Schema 변환기는 실제 모델(DTO, struct, class)에서 JSON Schema를 생성하여 payload를 검증하고, 계약을 공유하며, mock JSON을 생성하는 데 도움이 됩니다.

  1. 1단계 – PHP 소스 붙여넣기

    • 문서화할 모델을 왼쪽 에디터에 붙여넣습니다.
    • 참조되는 타입도 같은 스니펫에 포함하면 schema가 definitions를 생성할 수 있습니다.
    • 샘플 버튼으로 예제를 불러와 기대 입력 형식을 확인할 수 있습니다.
  2. 2단계 – 루트 class 선택(필요한 경우)

    • 여러 정의가 감지되면, API payload에 해당하는 root를 선택하세요.
    • 출력 스키마는 선택한 root를 기준으로 구성되며, 참조되는 타입의 추가 definition을 포함할 수 있습니다.
  3. 3단계 – JSON Schema 출력 검토

    • 타입, 필수/선택 필드, 중첩된 object/array 구조를 확인하세요.
    • 모델이 다른 모델을 참조하는 경우 definitions $ref 을(를) 확인하세요.
    • 검증, 문서화 또는 schema-first 개발을 위해 스키마를 복사하거나 다운로드하세요.
  4. 4단계 – 검증 또는 mock JSON 생성

    • Mock 데이터 생성 을 클릭하면 스키마가 미리 로드된 상태로 Mock 생성기를 열 수 있습니다.
    • 실제 payload를 스키마로 검증하여 breaking change를 조기에 발견하세요.
    • 고급 스키마 합성(예: anyOf/oneOf/allOf)을 사용한다면 Ajv 같은 전체 validator로 결과를 확인하세요.

스키마 keyword 지원 안내

생성된 스키마에는 $ref 가 포함될 수 있으며, 편집하여 anyOf, oneOf, 또는 allOf를 추가할 수 있습니다. 복잡한 스키마의 경우 전체 JSON Schema validator를 사용하고, 필요하다면 mock 생성 전에 dereference를 수행하세요.

관련 JSON Schema & 코드 생성 도구

스키마 검증, mock payload 생성, JSON 예제 포맷팅, 코드와 계약 동기화에 도움이 되는 도구들입니다.

자주 묻는 질문

어떤 PHP 문법을 지원하나요?

타입이 있는 프로퍼티 또는 DocBlock @var 주석이 있는 class 정의를 읽고, 가시성 수정자, nullable 타입, 배열, DateTime/UUID 힌트도 인식합니다. json-ignore 또는 JsonIgnore가 붙은 프로퍼티는 자동으로 제외됩니다.

PHP 타입은 JSON Schema로 어떻게 매핑되나요?

string/int/float/bool/array 및 커스텀 class는 대응되는 JSON Schema 타입으로 매핑됩니다. nullable/union 타입은 선택 처리, 배열은 schema array, array<string, T> 패턴은 map으로 처리됩니다. 알 수 없는 class는 같은 이름의 class 정의가 입력에 없으면 string으로 폴백됩니다.

Laravel이나 Symfony 같은 프레임워크에서도 동작하나요?

네. 타입이 있는 프로퍼티 또는 DocBlock 힌트가 있는 DTO, form request, entity class를 붙여넣을 수 있습니다. 모든 처리는 브라우저에서 로컬로 수행됩니다.

mock JSON 데이터는 어떻게 생성하나요?

스키마를 생성한 뒤 "Mock 데이터 생성"을 클릭하면 스키마가 미리 로드된 상태로 Mock Generator가 열립니다. 로케일과 옵션을 설정해 문서/테스트용 payload를 만들 수 있습니다.

PHP Class → JSON Schema 생성기 | JSONSwiss