无法访问传递的实例对象 class
Can not access passing instance object class
当我在某个方法中捕获 class 时出现错误。当我调用 anotherMethod 时,出现了这样的错误。
查看下面的代码。我该如何解决这个问题,请帮忙。
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 时,它给出了正确的 output.See 下面的代码。
class Java{
function __construct(Php $phpAccess){
$phpAccess->framework();
$phpAccess->cms();
}
}
您调用函数 anotherMethod 时没有任何参数。在您的 class 中,该方法是用参数定义的。所以你必须用参数 $php
调用另一个方法
echo $java->anotherMethod($php);
您收到错误是因为您将 PHP 对象传递给 Java 构造函数,但 PHP 对象是 anotherMethod 的依赖项。如下所示更改 Java class 以根据需要工作:
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();
当我在某个方法中捕获 class 时出现错误。当我调用 anotherMethod 时,出现了这样的错误。
查看下面的代码。我该如何解决这个问题,请帮忙。
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 时,它给出了正确的 output.See 下面的代码。
class Java{
function __construct(Php $phpAccess){
$phpAccess->framework();
$phpAccess->cms();
}
}
您调用函数 anotherMethod 时没有任何参数。在您的 class 中,该方法是用参数定义的。所以你必须用参数 $php
调用另一个方法echo $java->anotherMethod($php);
您收到错误是因为您将 PHP 对象传递给 Java 构造函数,但 PHP 对象是 anotherMethod 的依赖项。如下所示更改 Java class 以根据需要工作:
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();