[英]Can not access passing instance object class
當我在一個方法中捕獲類時,我會收到錯誤。 當我打電話給另一個方法時,我得到了這樣的錯誤。
請參閱下面的代碼。 我該如何解決這個請幫助。
class Java{
function anotherMethod(Php $phpAccess){
$phpAccess->framework();
$phpAccess->cms();
}
}
class Php{
public function framework()
{
echo "Laravel is a popular php framework. </br>";
}
public function cms()
{
echo "WordPress is popular php cms. </br>";
}
}
$php = new Php();
$java = new Java($php);
echo $java->anotherMethod();
但是當我在構造函數中捕獲類時,它會給出正確的輸出。請參閱下面的代碼。
class Java{
function __construct(Php $phpAccess){
$phpAccess->framework();
$phpAccess->cms();
}
}
您正在收到錯誤,因為您將PHP對象傳遞給Java構造函數,但PHP對象是anotherMethod的依賴項。 如下所示更改Java類以按您的方式工作:
class Java
{
private $phpAccess;
public function __construct(Php $phpAccess)
{
$this->phpAccess = $phpAccess;
}
public function anotherMethod()
{
$this->phpAccess->framework();
$this->phpAccess->cms();
}
}
class Php
{
public function framework()
{
echo "Laravel is a popular php framework. </br>";
}
public function cms()
{
echo "WordPress is popular php cms. </br>";
}
}
$php = new Php();
$java = new Java($php);
$java->anotherMethod();
你調用函數anotherMethod沒有任何參數。 在您的班級中,該方法定義為WITH paramater。 所以你必須使用參數$ php調用anotherMethod
echo $java->anotherMethod($php);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.