SORU
26 Aralık 2010, Pazar


Arama özelliği doğrudan nesne kapatma atanan

Bir nesnenin özelliği için uyguladığım bir kapatma arayabilir doğrudan bir değişkene kapatılması yeniden atama ve habersiz olmak istiyorum. Bu mümkün mü?

Aşağıdaki kod çalışmıyor ve Fatal error: Call to undefined method stdClass::callback() neden olur.

$obj = new stdClass();
$obj->callback = function() {
    print "HelloWorld!";
};
$obj->callback();

CEVAP
28 Aralık 2012, Cuma


Bu nesneleri işlevleri gibi davranmak için kullandığı sihirli yöntemin beri __kapatılmasında çağırmak arayarak yapabilirsiniz:

$obj = new stdClass();
$obj->callback = function() {
    print "HelloWorld!";
};
$obj->callback->__invoke();

Eğer geri bir dizi ya da bir dize ise çalışmaz tabii ki de PHP geri çağrıları geçerli olabilir) - __sadece kilitler ve diğer nesneler için davranış çağırmak.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Ammine Getahun

    Ammine Getah

    21 HAZİRAN 2011
  • kidrauhl

    kidrauhl

    15 Ocak 2007
  • Crossover

    Crossover

    18 HAZİRAN 2007