一个孩子,我有两个类A和B. 所以当B延伸的话,我可以访问的方法和预期的一样,因此正常工作:PHP调用其他类中的方法是不是
abstract class A{
public function sum($num1, $num2){
return $num1 + $num2;
}
}
class B extends A{}
$test = new B();
echo $test->sum(1,2); // output 3
但是如果我不想让B扩展A并仍想访问A的B方法会怎么样?可能吗?
我尝试下面的代码实例化一个新的A内部b调用它$c
但它不工作:
abstract class A{
public function sum($num1, $num2){
return $num1 + $num2;
}
}
class B{
$c = new A;
public function get_sum($n1, $n2){
return $c->sum($n1, $n2);
}
}
$test = new B;
echo $test->get_sum(1,2);
任何想法,如果它的所有可能调用类的方法不是的父母呼叫者?
什么是原始任务你解决?答案在你最初想达到的目标上差别很大。 – zerkms 2014-11-02 07:12:41
而不是'return $ c->'应该是'return $ this-> c->' – Cheery 2014-11-02 07:14:20
@Cheery试过'return $ this-> c-> sum($ n1,$ n2);'但它不会工作。 – anagnam 2014-11-02 07:16:09