Python'un dir()
benzeri, PHP'deki tüm nesnelerin niteliklerini (genel yöntemler ve özellikler gibi) listelemek üzere bir işlev var mı?PHP'nin işlevi, nesnenin tüm özelliklerini listelemek için kullanılır.
cevap
Nesne değişkenlerini listelemek için get_object_vars
ve belirli bir sınıfın yöntemlerini listelemek için get_class_methods
kullanabilirsiniz.
PHP5, eski get_class_methods ve get_object_vars'un neler yapabileceğini aşmak için eksiksiz bir Reflection API içerir.
Reflection::export(new ReflectionObject($Yourobject));
Sen (API çok iyi belgelenmiş olmak görünmüyor olsa da) bunun için Yansıma API'nın ReflectionClass::getProperties
ve ReflectionClass::getMethods
yöntemleri kullanabilirsiniz. PHP yansımasının yalnızca çalışma zamanı nesnelerini değil, derleme zamanı bilgisini yansıttığını unutmayın. Çalışma zamanı nesnelerinin de sorgu sonuçlarınıza dahil edilmesini istiyorsanız, en iyi get_object_vars
, get_class_vars
ve get_class_methods
işlevlerini kullanın. get_object_vars
ve get_class_vars
arasındaki fark, ilkenin size belirli bir nesne üzerindeki tüm değişkenleri (çalışma zamanında dinamik olarak eklenenler dahil) almasıdır; bu, size yalnızca sınıfta açıkça bildirilmiş olanları verir.
Çok yardımcı ve eksiksiz cevap, teşekkürler! +1 –
Bence şunu söyleyince eklenmesi gereken önemli bir nokta var: "... get_class_vars size sadece sınıfta açık bir şekilde bildirilmiş olan değişkenleri verir" ve DEA ile ilgili DEĞERLER sınıfta beyan edilenlerdir. varsayılan değerler) ve çalışma zamanı değerlerini DEĞİL. –
- 1. Nesnenin tüm gizli özelliklerini yazdırma
- 2. Tüm window object özelliklerini listelemek ister misiniz?
- 3. Bir nesnenin tüm özelliklerini nasıl alabilirsin?
- 4. Tüm sınıf özelliklerini listeleme
- 5. Borulu Nesnenin özelliklerini/yöntemlerini çağırın
- 6. JS geçerli nesnenin özelliklerini başvurmak nasıl
- 7. Bir nesnenin tüm özelliklerini karşılaştıran bir yüklem nasıl oluşturulur?
- 8. : Nasıl mevcut tüm veri türlerini listelemek için?
- 9. Datomic'te tüm bölümleri listelemek için sorgu
- 10. Özyinelemeli Bir Nesnenin Özelliklerini ve Çocuk Özelliklerini Bul
- 11. Scaffold/Nesnenin özelliklerini bir başlatıcıda oluştur
- 12. WPF neden bir nesnenin özelliklerini değil, alanların özelliklerini destekliyor?
- 13. Dinamik nesnenin özelliklerini almak için FastMember'i nasıl kullanabilirim?
- 14. Vta'da bir sembolün (tag) tüm referanslarını listelemek için Ctags nasıl kullanılır?
- 15. LDAP Belirli bir grubun tüm kullanıcılarını listelemek için Sorgu
- 16. Bir metin dosyasındaki tüm farklı karakterleri listelemek için komut dosyaları
- 17. Tüm asp.net docker görüntülerini listelemek için bir komut kullanma
- 18. Redis kanala abone olan tüm aboneleri listelemek için Redis komutu
- 19. Pachon modülündeki tüm yöntemleri listelemek için Emacs eklentisi
- 20. Bir satırdaki tüm kombinasyonları listelemek için VBA makrosu
- 21. Excel: Bir listedeki tüm değerleri koşullu olarak listelemek için Makro
- 22. Javascript işlevi dinamik DIV nitelik Dinamik div ve özelliklerini oluşturmak için javascript fonksiyonu kullanılır benim kodlamasında
- 23. Tüm behat testlerindeki tüm etiketleri listelemek mümkün müdür?
- 24. Python kavrayışını listelemek için döngü
- 25. Modelin tüm özelliklerini nasıl ekleyebilirim?
- 26. Başka bir nesnenin dizisini içeren bir nesnenin yansıma okuma özelliklerini kullanma
- 27. Tüm işlevi yerleştirmek mümkün mü?
- 28. Ko.validation.group işlevi nasıl kullanılır?
- 29. DistHaversine işlevi nasıl kullanılır?
- 30. WPF: Nesnenin özelliklerini (bazıları) bir nesnesine dinamik olarak bağlama
Not Bu, sihirli yöntemlerle çalışmaz. – OIS