a 识别脚本运行时的位置或名称等
_line_ 返回当前行号
_file_ 返回当前脚本的完整路径和文件名,包含一绝对路径
_function_ 返回该函数被定义时的名字(大小写敏感)
_class_ 类名称,返回该类别定义时的名字(大小写敏感)
_method_ 类的成员方法名称(大小写敏感)
还有oop里的魔术
_get()与_set(),_call(),当试图写入一个不存在或不可见的属性时,会执行_set()方法,如
p[$name] = $value;
}
function __get($name) { //取得属性名称
print get::$name
;
return array_key_exists($name,$this->p) ? $this->p[$name] : null;
}
}
$shop = new myshop();
$shop->apple = 2;
$shop->pear = 3;
$shop->pear++;
echo 苹果=. $shop->apple.
;
echo 梨=. $shop->pear.
;
?>
2 php里的clone()
var = 2;
print $obj1->var;
?>
php4中上面的输出1,$obj2将值全部赋给$obj1,是建立对象的副本;但php5中,$obj1被当一个对象引用处理,当$obj2的值改变时,实际上修改的
是$obj的引用,所以输出2。
还有注意的是==比较两个对象的内容,===比较对象的句丙,即引用的 地址
