能解释以下我这个要怎么输出吗?

qq_6m2anbpr 部署 PHP 代码 最后由 极客学院_ASMITA 于2015年06月18日回复

  • 2 回答
  • 2.3k 浏览

class person{

    static $a='ni hao a';

    private $name ='张三',$age=18;

    

    static function f1(){

        echo $shis->name;   

    }

 /**

     * @param string $name

     */

    public function setName($name)

    {

        $this->name = $name;

    }

}

$p1 = new person();

$p2 = new person();

echo $p1->setName('李四');

echo $p2->setName('王五');

  • 极客学院_ASMITA 2015年06月18日 回答 #1楼
  •  static function f1(){

            echo $shis- >name;    

        }

    这个地方写错了

    要用echo $this

  • 0 评论
  • 极客学院_ASMITA 2015年06月18日 回答 #2楼
  • 给你个参考代码

    <?php  

    class person{

        static $a='ni hao a';

        private $name ='张三',$age=18;

    public $outstr="test";

        static function f1(){

            echo $this- >name;    

        }

        public function setName($name)

        {

            $this- >name = $name;

        }

    public function getName()

        {

            return $this- >name;

        }

    }

    $p1 = new person();

    $p2 = new person();

    $p1- >setName('李四');

    $p2- >setName('王五');

    echo $p1- >outstr;

    echo $p1- >getName();

    echo $p2- >getName();

    ? >

    你写的都是局部变量,只能在内部输出,或者通过return返回

    要想直接调用输出,必须是public定义的

  • 0 评论