¿Cuándo debería usar métodos, get () y magic offset

11

Hay tres formas diferentes de obtener un valor de entidad, por ejemplo, el tipo de contenido del nodo.

  • $node->type->value
  • $node->getType()
  • $node->get('type')

¿Cuál debo usar?

Daniel Wehner
fuente

Respuestas:

10

Si hay un método específico, en cuanto a $node->getType(), recomiendo usar este. Obviamente, ese nunca es el caso de cosas dinámicas como los campos, ya que esa $node->type->valuesería la recomendación.

Editar: $node->get('type')es solo una variante más detallada de $node->type- ambos le dan el objeto de campo "tipo".

fago
fuente
5

Siempre se prefiere un método específico IMO debido a la @returnsugerencia de tipo. Realmente no puedes escribir el retorno de a get('foo'). Y, la magia siempre será más lenta y también desconocida para los IDEs sobre lo que se devuelve. (Tenga en cuenta que cada vez que estamos hablando de IDE también estamos hablando de posibles errores, no solo el IDE, sino que el programador no tiene conocimiento de lo que hay en una variable).


fuente