php __ özdevinimli_yükle () ve dinamik / çalışma zamanı sınıf tanımı - eval olmadan bir yolu var mı?

0 Cevap php

I this post ile ilgili mesajlar için bir arama yapıyor sonra okunur.

Ben biraz farklı, ancak ilgili sorun var.

(Bu kötü bir fikir çünkü - Birisi, vb eval kullanılan değer sağlamak için bir kullanıcı izin verirse suistimal açık) eval () OLMADAN bir yolu var mı, örneğin sınıfın yapısını tanımlamak için böyle:

if(!class_exists($className) && dao::tableExists($className)) {
   class $className extends daoObject {
     public function __construct($uid) {
      parent::__construct($uid);
     }
   }
   dao::generateClass($className);
}

Yeni çekirdek tabloları bir çerçeveye ilave edilir, onlar ilgili alanları erişmek için genel bir veri erişim nesnesi ile kullanılan olabilir, çünkü bunun nedeni olmadan (ebeveynde __ çağrı yoluyla alıcılar / ayarlayıcıları, ekleme / ekleme ve güncelleme / silme) bir sınıf yazmak kodlayıcı gerektiren ve daha sonra bunu incelemek zorunda veya tablo türleri için özel kod jeneratörler yazmadan, her bir sınıf yazıyorum. daoObject yaptığı tüm benim için.

Niyeti yoksa bir dosyaya sınıf tanımını yazmak, sonra bir sınıf tanımlamak için yöntem bu tür kullanmaktır.

Ilgili tablo adı yoksa, başarısız olur. Sınıf (çalıştırıldığı sonraki zaman örneğin) varsa o zaman onu tanımlamak değil. O var ama bir tabloismi vermezse, yeni tablo eklenir ve bir komut verileri eklemek için çalıştırıldığında oluşacak, hangi oluşturun kullanmak ve o onu aramak ilk defa kurtarabilir. Yazarlar csv üzerinden sadece tablo alanları ve örnek verileri belirleyecek. Bu komut sınıfları oluşturmak ve bir vuruşta verileri ithal edecek. Ben o zaman işe yarayabilir gibi görünüyor, bunu içerir, ama ben nesnesinin özelliklerini modifiye ettik SONRA yüzden bunu yapmak için iki kez dosyalara yazmak zorunda değilsiniz bunu yapmak istiyorum, bir dosyaya tanımını yazmak OLABİLECEK iş.

Bu simplified, ama mümkün mü?

0 Cevap