DevCraft Документации
РазработкиDevCraft Dev ToolsСправочникAttributes

WithItem v1.0.0

Атрибут append/map: withPropertyItem(...) для элементов массива.

Описание: PHP-атрибут для array-свойств. Один дескриптор типа — append (withTagsItem($item)); два — map set (withLabelsItem($key, $value)).

Namespace: Devcraft\Attributes

Target: Attribute::TARGET_PROPERTY

С версии: 1.0.0

См. также:

__construct(string|array ...$types)

Параметры:

  • $types (string|array ...): один или два дескриптора (строка или список строк / union)

types(): array

Описание: Возвращает список переданных дескрипторов.

Поведение

  • Цель — non-nullable array, non-public, non-static, non-readonly.
  • Append: один дескриптор → $array[] = $item.
  • Map: два дескриптора → $array[$key] = $value; ключи только int/string.
  • Можно комбинировать с #[With] на том же свойстве.
#[WithItem('string')]
private array $tags = [];

#[WithItem('string', ['string', 'null'])]
private array $labels = [];

На этой странице