在php class类中调用变量一定要使用this吗?

<?phpclassSportObject{public$name;public$height;public$avoirdupois;publicfunctionbooF... <?php
class SportObject{
public $name;
public $height;
public $avoirdupois;

public function booFootBall($name,$height,$avoirdupois){
if($height > 180 and $avoirdupois < 100){
return $name.'符合踢足球的标准';
}else{
return $name.'不符合踢足球的标准';
}
}
}

$sport = new SportObject();
echo $sport->booFootBall('刘明','180','60');
?>
这是我写的方法,其中没有使用this但是不会报错。
展开
 我来答
百度网友75ba423
2013-01-26 · TA获得超过271个赞
知道答主
回答量:46
采纳率:0%
帮助的人:18.7万
展开全部
加上this就是明确指出该成员函数调用的变量比如你的this->$name 是调用的自己的类内部的成员变量,如果你的类的实例里面没有对该成员赋值,那么该成员函数就没有结果,如果不加this的话,偶也不太清楚,可以试试,在实例化类的前面 设置一个$name 然后附一个值,然后实例化类,将类里面的$name赋值另外一个值,在调用这个类的成员函数,看是什么结果,就知道他调用的是哪个变量了,然后就是测试一下 加不加this的时候,结果又是如何的。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
捡大便_
推荐于2016-10-08
知道答主
回答量:41
采纳率:0%
帮助的人:17.3万
展开全部
if($height > 180 and $avoirdupois < 100){
你这边用到的$height,$avoirdupois是调用时输入的参数'180','60';
public $height;
public $avoirdupois;这两个你完全没有用到
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
穷凶极饿&#xF42D;
2013-01-26 · 超过11用户采纳过TA的回答
知道答主
回答量:56
采纳率:0%
帮助的人:29.7万
展开全部
你方法中调用的$name是参数中$name 是局部变量 而不是成员属性 实际上$this->name 为空
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式