Много раз у меня был такой сценарий в php, где у меня есть структура данных, но с ней трудно работать, потому что PHP doc не может справиться с этим.
<?php
/** @var (??) $contact */
$contact = array(
"firstName" => "John",
"lastName" => "doe",
"age" => 26,
"address" => array(
"streetAddress" => "naist street",
"city" => "Nara",
"postalCode" => "630-0192"
),
"phoneNumbers": [
array(
"type" : "mobile",
"number": "333 444 5566"
), array(
"type" : "home",
"number": "333 222 1100"
)
]
}
Возможно, PHPDoc справится с этим, и я просто не знаю как. Но, по крайней мере, JSON Schema звучит как отличный выбор для документирования подобных структур, и объекты JSON всегда можно отобразить в пропорции 1: 1 в php-массивы, поэтому возникает вопрос:
Есть ли способ документировать структуру данных в IDE, например, PhpStorm, таким образом, чтобы я мог получить правильную справку по типу при наборе чего-то подобного?:
$contact["phoneNumbers"][0]["type"]
Ничего страшного, если решение не с JSON Schema, было бы достаточно PHP doc, если бы оно могло настолько углубиться в структуру.
Да, и создание class Contact {}
и class PhoneNumber {}
неосуществимо, потому что структура не так проста, как та, о которой я упоминал здесь, и было бы излишним писать все эти классы только для подсказок типов.
Заранее спасибо за помощь!
Схема JSON: https://json -schema.org / Learn / Getting-Step-by-step.html