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

  • Andrea Lewis

    Andrea Lewis

    14 Mart 2013
  • Angry Paintballer

    Angry Paintb

    8 Ocak 2012
  • Cristina Landa

    Cristina Lan

    28 Ocak 2010