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

  • eisleyhead

    eisleyhead

    11 Ocak 2006
  • thegeniuses.tv

    thegeniuses.

    11 Aralık 2006
  • TheOtherMau5

    TheOtherMau5

    6 Mart 2012