老师没有定义protected $allow_size

老师没有定义protected $allow_size

1.为什么也能调用


2.在同一个类中,定义protected 的属性 ,在某个方法内可以调用,那要是在某个方法内定义属性呢,可以在类的另一个方法内进行调用吗

正在回答

登陆购买课程后可参与讨论,去登陆

3回答

您好,在类的方法中是不能定义属性的,定义的是变量。所以在同一个类中定义的另一个方法也是不能调用其它方法中的变量的,因为变量的作用域。

<?php
     class Test{
        public $test=10;
        function test(){
            //此处只能定义变量,如果添加public等关键字会报错。
             $test=0;
        }
        function fun(){
            //调用的是属性test,而不是test()中的变量。
            //可以将属性注释测试,会发现报错。
            echo $this->test;
        }
    }
    $test = new Test();
    $test->fun();

祝学习愉快!

提问者 消除bug 2019-05-20 14:03:34

下载的源码没有,老师讲解的时候也没有写的

  • 您好,源码中是有的哦~课程中老师在视频四分钟之后进行了设置。祝学习愉快!
    2019-05-20 14:53:50
好帮手慕查理 2019-05-20 10:57:15

您好,1.课程中是定义了$allow_size属性的。

http://img1.sycdn.imooc.com//climg/5ce2177900012a1202990099.jpg

2.方法中定义的是变量。假设值test方法中的one变量。如果另一个类继承了此类则可以使用test方法,从而在test类中使用。但如果未继承则不能使用方法因为也不能使用变量。祝学习愉快!

  • 提问者 消除bug #1
    就allowSIze属性
    2019-05-20 14:04:12
  • 提问者 消除bug #2
    我的意思是在同一个类中定义一个方法,在方法里面定义一个受保护的属性,可以在同一个类中定义另一个方法里调用前面方法中的属性吗?
    2019-05-20 19:22:30
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师