• 技术文章 >后端开发 >php教程

    有关问题又来咯,大牛们

    2016-06-13 10:19:32原创355
    问题又来咯,大牛们
    error_reporting(E_ALL | E_STRICT);

    class mycls{

    private $p=1;


    /** 被重载的数据保存在此 */
    private $data = array();


    function func()
    {
    echo "none static";
    }


    /* public function __set($name,$value)
    {
    echo "Setting '$name' to '$value'
    \n";
    $this->$name = $value;
    } */

    public function __get($name)
    {
    echo "Getting '$name'
    \n";
    return $this->$name;

    }


    }


    $my=new mycls;

    $my->a=10; //


    echo $my->a;
    ?>

    ------解决方案--------------------
    没有问题呀
    ------解决方案--------------------
    你有 $my->a=10;
    当然就不会调用 __get 啦
    ------解决方案--------------------
    写成这样就都有了
    PHP code
    error_reporting(E_ALL | E_STRICT);class mycls{  private $p=1;   /** 被重载的数据保存在此 */  private $data = array();    function func()  {    echo "none static";  }  public function __set($name,$value)    {    echo "Setting '$name' to '$value'
    \n"; $this->data[$name] = $value; } public function __get($name) { echo "Getting '$name'
    \n"; return $this->data[$name]; }}$my=new mycls;$my->a=10; // echo $my->a;
    ------解决方案--------------------
    erer
    ------解决方案--------------------
    $my=new mycls;

    echo $my->a;//直接输出就会被调用啦

    没有echo语句,直接赋值,就会调用__set

    但你的代码中注销掉了
    ------解决方案--------------------
    探讨

    引用:
    引用:
    写成这样就都有了

    PHP code
    error_reporting(E_ALL | E_STRICT);

    class mycls{
    private $p=1;

    /** 被重载的数据保存在此 */
    private $data = array();

    function func()
    {
    echo "none sta……

    php入门到就业线上直播课:查看学习

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    前端(VUE)零基础到就业课程:点击学习

    清晰的学习路线+老师随时辅导答疑

    自己动手写 PHP MVC 框架:点击学习

    快速了解MVC架构、了解框架底层运行原理

    专题推荐:nbsp quot name echo function

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• ❤️‍🔥接口自动化测试不想写代码?• 你知道如何用PHP实现多进程吗• php里 的 四舍五入_PHP教程• PHP中全面阻止SQL注入式攻击分析小结_PHP教程• 第八节 访问方式 [8]_PHP教程• 使用阿里云低成本打造站内搜索引擎
    1/1

    PHP中文网