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