您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

关于_set的有关问题

2024/4/14 7:23:24发布10次查看
关于__set的问题
class aa{
function __set($pro, $v){
echo a\n;
$this->pro=$v;
echo $v\n;
}
}
$a=new aa;
$a->b=1;

输出是a a 1 1;
2个问题,为何输出2次;
为何是a a 1 1,而不是a 1 a 1;
------解决思路----------------------
你把 echo a\n; 改成 echo $pro\n; 就会看到
b     因为 b 属性不存在,所以进入了 __set 方法
pro 同样因为 pro 属性不存在,再次进入 __set 方法
1    进入两次,打印两次值就不足为奇了
1
当 $this->pro=$v;
改为 $this->$pro=$v;
就只进入一次了
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product