JSON na klasy PHP
Konwertuj przykład JSON na wpisaną klasy PHP z konstruktorem, fromArray i toArray.
JSON na klasy PHP
Wklej obiekt lub tablicę JSON, a to narzędzie wyznacza typ dla każdego pola, następnie generuje gotową klasy PHP: wpisane właściwości, konstruktor, statyczną fabryką fromArray() i metodę toArray() do konwersji obiektu z powrotem do zwykłej tablicy. Zagnieżdżone obiekty automatycznie stają się własnymi klasami, a identyczne kształty są ponownie używane zamiast duplikowania, więc ładunek z kilkoma podobnie strukturalnymi sekcjami nadal produkuje kompaktny plik.
Nazwa klasy i nazwa przestrzeni nazw nazwij klasę root i opcjonalnie zawiń ją w przestrzeni nazw PHP. Promowany konstruktor PHP 8 zapisuje właściwości bezpośrednio w podpisie konstruktora zamiast deklarowania ich osobno — wyłącz go dla klasycznego jawnego konstruktora. Generuj gettery i settery dodaje metody dostępu (isX() dla wartości boolowskich, getX()/setX() w inny sposób) zamiast bezpośredniego ujawniania właściwości. declare(strict_types=1) dodaje nagłówek ścisłego typu PHP, a komentarze Docblock adnotują każdą właściwość jej deducowanym typem. Pola pól decydują, czy lista jest wpisana jako zwykła tablica czy udokumentowana typem elementu, takim jak string[], ponieważ PHP nie ma generyki do tego w typie.
Pole widziane jako null lub brakujące z niektórych elementów tablicy obiektów jest generowane jako nullable — z bezpiecznym sprawdzeniem isset() gdy musi zbudować zagnieżdżony obiekt lub mapować listę, a w inny sposób z domyślnym null-coalescing. Klucz, który koliduje ze słowem kluczowym PHP lub zaczyna się cyfrą, jest przejściowy do prawidłowej nazwy właściwości, a każda wygenerowana właściwość zachowuje oryginalny klucz JSON jako klucz tablicy w fromArray() i toArray().
Wszystko działa lokalnie w przeglądarce — JSON, który wklejasz, który może zawierać rzeczywiste odpowiedzi API lub dane konfiguracyjne, nigdy nigdzie nie jest wysyłany. Skopiuj wygenerowaną klasy, pobierz ją jako plik .txt lub wyślij dane wyjściowe z powrotem do danych wejściowych w celu dalszego udoskonalenia.