为了账号安全,请及时绑定邮箱和手机立即绑定

为什么这样写代码是错的啊

<?php
class car{
 public $speed=0;
 public function speedUp(){
  return $speed+10;
 }
 $car=new Car();
 $car->speedUP()
 echo $car->speed;
 ?>

正在回答

4 回答

因为这句代码return $speed+10;他返回的是$speed +10 的值,而下面你调用输出的是 
 echo $car->speed;的值,改的话方法里可以这么写

public function speedUp()

{

    $speed = $speed + 10;

    return $speed;

}

0 回复 有任何疑惑可以回复我~

你这么写思路不够简洁,逻辑有问题啊

0 回复 有任何疑惑可以回复我~

class Car{//大写

    public  $speed=0;

    public function speedUp(){

        return $this->speed+=10;

    }

}//您打少了花括号

    $c = new Car();

    $c->speedUp(); //注意大小写

    echo $c->speed;

这样就行了

0 回复 有任何疑惑可以回复我~
#1

渣渣一只螺

跟少打没有关系,这是内部类调用也是用这种写法
2017-07-11 回复 有任何疑惑可以回复我~

问题在类里面,return $speed+10;这里返回值虽然加了10,但是变量speed本身并没有改变,所以最后输出的还是0

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么这样写代码是错的啊

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信