Kapan saya harus menggunakan metode, dapatkan () dan magic offset


11

Ada tiga cara berbeda untuk mendapatkan nilai entitas, misalnya tipe konten node.

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

Yang mana yang harus saya gunakan?

Jawaban:


10

Jika ada metode khusus - seperti untuk $node->getType()- saya akan merekomendasikan menggunakan yang ini. Jelas itu tidak pernah terjadi untuk hal-hal dinamis seperti bidang - untuk itu $node->type->valueakan menjadi rekomendasi.

Sunting: $node->get('type')hanya varian yang lebih verbose $node->type- keduanya memberi Anda objek bidang "type".


5

Metode khusus IMO selalu lebih disukai karena @returntipenya. Anda tidak dapat benar-benar mengetikkan pengembalian get('foo'). Dan, sihir akan selalu lebih lambat dan juga tidak diketahui oleh IDE tentang apa yang dikembalikan. (Perhatikan bahwa setiap kali kita berbicara IDE, kita juga berbicara tentang kemungkinan bug - bukan hanya IDE tetapi programmer tidak memiliki pengetahuan tentang apa yang ada dalam variabel.)

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.