参数在两个不同文件中的两个类之间传递

时间:2012-03-05 09:30:18

标签: php oop

我想问一下如何在两个不同文件中的两个类之间传递参数? 例如:

class a{
  function aa(){
    $var1 = 10;
    return $var1;
  }
}
//in different file
class b{
  function bb(){
    echo"$var1"; //how this can be achieved?
  }
} 

5 个答案:

答案 0 :(得分:2)

函数bb内的

执行此操作:

include('filepath to the file containing class a');
$a = new a();
echo a->aa();

或者看看aa函数是否为静态

注意:班级a中的变量为$var,您返回$var1

开始学习PHP中的类和对象的好地方就在这里 - > http://uk.php.net/manual/en/language.oop5.basic.php

答案 1 :(得分:1)

您可以使用类名调用该函数,但必须在脚本中加载这两个类。

class b{
function bb(){
     echo $var1 = a::aa(); 
   }
}

您应该在方法$var

中返回$var1而不是aa

答案 2 :(得分:1)

class a{
  function aa(){
    $var = 10;
    return $var1;
  }
}
//in different file
class b{
  $aobj = new a();
    $var1 = $aobj ->aa();
    echo"$var1"; //this can be achieved
  }
}

答案 3 :(得分:1)

这里的答案都没有,因为操作要求传递参数而不是调用它。正确的方法是创建一个b类对象

class a{
  function aa(){
    $var = 10;
    $obj_b = new b(); //create an object of the class b
    $b -> bb($var); //pass the $var value to bb method of class b
  }
}

//in different file
class b{
  function bb($var){
    echo $var;  //now your values is passed here
  }
}

答案 4 :(得分:0)

或使用static method

class A {
    public static function aa(){
        $var = 10;
        return $var1;
    }
}

然后你可以随时随地打电话:

A::aa()

确保在调用之前加载定义类A的脚本(duh!)