- method_exists: documentation ( source)
<?php
class o {
function __set($name,$val) {
$name= 'set_'.$name;
if(method_exists($this,$name))
$this->{$name}($val);
else
$this->{$name}= $val; // causing infinite recursion
}
}
$o= new o;
$o->some_prop= 10; // infinite recursion occurs