Unset Sınıf

3 Cevap php

i tam bir form yaratma sistemi var. Birçok farklı Soru Tipleri ve ben kişi yapmıştı cevabın doğru olup olmadığını kontrol etmek gerekir.

Sorular her türlü kendi sınıf daima itemClass denir edecek ve bu sınıf, kendi Dosya olduğunu. Everytime bir soru Dosya dahil sordu ve bu sorun var olduğunu: ben bir PHP-File Sorular farklı kontrol etmelisiniz. Ve sonra hata geliyor - itemClass zaten yardımıyla bildirilmektedir.

Bir Sınıf unset için herhangi bir yöntem var mı?

Güzel bir gün var!

Dominik

3 Cevap

I tested your solutions and finally I got an Idea: I renamed the Classes to each of it's type (ynItemClass, markItemClass, ...) and when I need a Item Type a made the following

$it = $item->item_type."ItemClass";
$test = new $it($smarty);

Ve işe yarıyor!

Have a nice Day! Dominik

Hayır, bu "tanımsız" Varolan bir sınıf mümkün değildir.

Senin durumunda, tüm aynı ada sahip çeşitli sınıflar olmamalı: her sınıf farklı / ayrı bir isim olmalı, ve bu çalışma şeklini değiştirmek gerekir, bu yüzden ([{adlı değil sınıfları ile kod fırsatlar 0)]}.


For instance, you could have :

  • ItemClass_Type1 in itemclass_type1.php
  • ItemClass_Type2 in itemclass_type2.php

ve böylece - gerekirse bunun mantıklı olmadığını ve bu sınıfları / tümünü aynı temel sınıfını genişletmek olabilir.


(For a while, I thought maybe runkit could help with the "undefining a class" idea ; but there doesn't seem to be a function to do that -- and that extension is not quite stable and shouldn't be used on a production server)

Hayır.

Bir sınıf decalred sonra bu 'unset' olamaz

Belki namespaces kullanmak sizin için olabilir?