¿Hay una sugerencia de tipo en PHP 8.1 que permita usar ExampleClass[] para declarar que es una matriz de objetos de la clase ExampleClass ?
En mi caso específico, ExampleClass se llama Task
Lo que quiero pero no funciona:
private Task[] $tasks; Mi PHPStorm IDE me dice que los tipos Plural solo están permitidos en tipos de documentos
- hablar de que solo en PHPDoc usando Tasks[] estaría totalmente bien. Pero quiero usar PHP simple .
El error es: Error PHP Parse error: syntax error, unexpected token "[", expecting variable
Si solo necesitaría un objeto Task y no una matriz de objetos Task[] , funcionaría con:
private Task $task;Esta es mi solución actual y funcional:
private array $tasks;La respuesta corta es no.
Tengo entendido que hacer cumplir tal cosa tiene terribles problemas de rendimiento. Algunas personas quieren llegar hasta el final y tener genéricos completos, otras solo quieren colecciones con seguridad de tipos. A algunas personas les preocupa que la implementación de este último primero pueda obstaculizar el desarrollo del primero. Así que estamos parados.
Hay una discusión ocasional en la comunidad como esta: https://externals.io/message/108175