代码应该没错吧,什么情况呢?
比你盖茨
比你盖茨 2017-07-24 16:13:01
[PHP讨论组]

QQ截图20170724161159.jpg22.jpg

比你盖茨
比你盖茨

全部回复(6)
天蓬老师
public function __get($name)
{
    return $this -> $name; //$name是外部传参,属于变量
}

请修改你的类中语法。

还有,你的外部用对象的调用属性的语法,是正确的。

只有调用一个类中不存在的属性时,你定义的魔术方法__get()才会生效。


nearest

最前面加上:

private $name = "yourname";


phpcn_u11553

private $name ='';

mr

必须错,你没有定义

Ailon

你的class里面没有$name, 怎么可以使用$this->name呢

  • 回复 如果这样,那30个字段,也要分别 __get __set 30次?
    比你盖茨 作者 2017-07-25 11:20:04
  • 回复 你必须在前面像 $xm 一样,需要先定义$name, 然后才能使用$this->name; __get和__set只需要写一个不用30次, 当你外部访问不存在或私有属性时会自动调用
    Ailon 作者 2017-07-25 11:31:52
  • 回复 你必须在前面像 $xm 一样,需要先定义$name, 然后才能使用$this->name; __get和__set只需要写一个不用30次, 当你外部访问不存在或私有属性时会自动调用
    Ailon 作者 2017-07-25 11:32:10
Pequeño

    $this->$name 吧

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号