В чем разница между setBackgroundImage: Forstate и setImage: Forstate:

Магические функции автоматически вызывается (срабатывает), когда что-то происходит. Нормальные функции должны быть специально вызваны вашим php-кодом.

В вашем случае: __isset () будет автоматически вызываться, когда у вас есть isset (), который пытается получить незанятое свойство.

Пример:

root@folgore:/tmp/php# cat a.php 
<?php
class a {
    private $att1;
    public $att2;

    function __isset($field) {
        echo "__isset invoked for $field\n";
    }
}

$obj=new a();

// __isset will be triggered:
isset($obj->att1);

// __isset will not be triggered:
isset($obj->att2);

root@folgore:/tmp/php# php a.php 
__isset invoked for att1
15
задан EmptyStack 30 August 2011 в 10:18
поделиться