如何在PHP中调用另一个类函数
我的问题类似于,但它的答案对我来说并不适用 基本上这就是我想做的 在“a.php”中,我定义了类a如何在PHP中调用另一个类函数,php,class,function,Php,Class,Function,我的问题类似于,但它的答案对我来说并不适用 基本上这就是我想做的 在“a.php”中,我定义了类a class A{ function ab(){} function cd(){} function ef(){} ... } 在“b.php”中,我想定义可以调用类A中函数的类b。下面是我所说的,但它似乎不起作用 class B{ function xy(){ require 'a.php'; $a = new A(); $this->x = $
class A{
function ab(){}
function cd(){}
function ef(){}
...
}
在“b.php”中,我想定义可以调用类A中函数的类b。下面是我所说的,但它似乎不起作用
class B{
function xy(){
require 'a.php';
$a = new A();
$this->x = $a->ab();
$this->y = $a->cd();
return $a->ef();
}
}
谁能给我指一下正确的方向吗?谢谢
========
更新:为了让我的问题更清楚,我举了另一个例子
class Person{
function firstName(){return $this->firstName;}
function lastName() {return $this->lastName;}
function address() {return $this->address;}
...
}
class Car{
function ownerInfo(){
$owner = array();
require 'person.php';
$p = new Person($this->ownerID);
$owner['firstname'] = $p->firstName();
$owner['lastname'] = $p->lastName();
$owner['address'] = $p->address();
//I am sure the data is there, but it returns nothing here
return $owner;
}
}
像这样试试
class B extends A{
function xy(){
require 'a.php';
$a = new A();
$this->x = $a->ab();
$this->y = $a->cd();
return $a->ef();
}
}
像这样试试
class B extends A{
function xy(){
require 'a.php';
$a = new A();
$this->x = $a->ab();
$this->y = $a->cd();
return $a->ef();
}
}
继承?……只将<代码>类B/<代码>扩展到<代码>类A/C++ >,您可以使用在<代码>类A/<代码>中定义的方法,将类B扩展为PHP,但我知道C++中包含(需要)文件头(文件的开头,或B类减速之前)。实际上A和B是不同的模型,所以我不想使用“B类扩展A”。A和B中的大多数其他函数都不相关。我试图将require语句放在文件的开头,但它也不起作用。继承?…只需将
类B
扩展到类A
,您可以使用类A
中定义的那些方法用类AnotSure为php扩展类B,但我知道在C++中包含(需要)文件中的头(文件的开头好,或者B类减速之前)实际上A和B是不同的模型,所以我不想用“B类扩展A”。A和B中的大多数其他函数都不相关。我试图将require语句放在文件的开头,但它也不起作用。当然它不好,但我们可以这样使用,因为每当使用此类B时,它可能会提取A.php文件,或者,加载一个不可计算的.php可能会被禁止……还有其他方法吗?事实上,我已经把“A类扩展C类”和“B类扩展D类”加上扩展A
没有任何作用。这只会增加代码混乱。@coolmoon您可以这样做,如果您将其他对象扩展到其他对象,则会出现NP。当然这并不好,但我们可以这样使用,因为每当使用此类B时,它可能会提取一个.php文件,或者它可能会减少加载一个不可计算的.php….还有其他方法吗?事实上,我已经把“A类扩展C类”和“B类扩展D类”加上扩展A
没有任何作用。这只会增加代码的混乱。你可以这样做,如果你将其他人扩展到其他人,就会出现NP