永发信息网

php实例化类,使用类中方法,如何输出方法里的变量?

答案:4  悬赏:20  手机版
解决时间 2021-03-20 06:13
  • 提问者网友:暗中人
  • 2021-03-19 09:01
php实例化类,使用类中方法,如何输出方法里的变量?
最佳答案
  • 五星知识达人网友:杯酒困英雄
  • 2021-03-19 10:25
class a
{
function a1($var)
{
$_b1 = "123";
$_b2 = "abc";
$_b3 = "456";
if($var==1)
$echo $_b1;
elseif $var==2
$echo $_b2;
else
$echo $_b3;
}

}
$c = new a;
$c -> a1(1);

可以试试这种方式,不能类似于楼主那样的输出,因为_b1,_b2,_b3属于局部变量,函数结束时就自动销毁了,如果想要把它输出,要么用return把他们返回了,要么就用我这种方式
全部回答
  • 1楼网友:傲气稳了全场
  • 2021-03-19 11:03
class a
{
    function a1()
   {
        global $_b1,$_b2,$_b3;
        $_b1 = "123";
        $_b2 = "abc";
        $_b3 = "456";
    }

}
$c = new  a;
$c -> a1();
echo $_b1;
  • 2楼网友:污到你湿
  • 2021-03-19 10:54
//方法一 
class a {
  public $_b1, $_b2, $_b3;
  public function a1() {
    $this -> _b1 = '123';
    $this -> _b2 = 'abc';
    $this -> _b3 = '456';  
  }   

}   

//调用
 $c = new a;
 $c -> a1();
 echo $c -> _b1;

//说明, 类中或者说方法中, 在通常下, 是局部变量, 而非全局变量!
//要直接输出 echo $_b1;的话, 你就要把变量弄成全局变量, 或者使用引用,不过引用这种方法,在php高版本中好像已经不支持,所以不推荐。
 
//方法二 
class a{
 
 function a1() {
  global $_b1;
         $_b1 = '123';
 }
 
}
$c = new a;
$c -> a1();
echo $_b1;
  • 3楼网友:刀戟声无边
  • 2021-03-19 10:32
函数在类里叫方法,变量在类里叫属性或字段,在方法里的变量是局部变量,只在调用方法期间才生效,所以要用方法里的变量就要在调用方法期间使用方法里的变量

class a
{
function a1
{
$_b1 = "123";

$_b2 = "abc";
$_b3 = "456";
echo $_b1;
}

}
$c = new a;
$c -> a1();
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯