我想问如何在两个不同文件中的两个类之间传递参数?例如:
class a{
function aa(){
$var1 = 10;
return $var1;
}
}
//in different file
class b{
function bb(){
echo"$var1"; //how this can be achieved?
}
}
在函数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
这里的答案都不对,因为操作要求传递参数而不调用它。正确的方法是创建一个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
}
}
您可以用类名调用函数,但必须在脚本中加载这两个类。
class b{
function bb(){
echo $var1 = a::aa();
}
}
应该在方法aa
中返回$var
而不是$var1
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
}
}
或者使用静态方法:
class A {
public static function aa(){
$var = 10;
return $var1;
}
}
然后你可以在任何地方打电话:
A::aa()
只需确保定义类A的脚本已加载,然后再调用它(duh!)