我需要使用一个我需要在另一个类的多个静态函数中使用的PHP类。
创建一个类的实例以供PHP类中的静态函数使用的正确方法是什么?
我已尝试在课堂外实例化该课程。
<?php
$newClassInstance = new importedClass();
$newClassInstance->init();
Class Foo{
public static function fooMatic(){
$newClassInstance->doStuff();
}
}
?>
出现此错误:
PHP Parse error: syntax error, unexpected T_VARIABLE, expecting T_FUNCTION
...在每个功能内:
Class Foo{
public static function fooMatic(){
$newClassInstance = new importedClass();
$newClassInstance->init();
$newClassInstance->doStuff();
}
}
?>
错误:
Call to a member function doStuff() on a non-object
在所有功能之前:
<?php
Class Foo{
$newClassInstance = new importedClass();
$newClassInstance->init();
public static function fooMatic(){
$newClassInstance->doStuff();
}
}
?>
错误:
syntax error, unexpected T_VARIABLE, expecting T_FUNCTION
答案 0 :(得分:1)
为什么不通过参数传递类实例?
class Foo{
public static function fooMatic($classInstance){
$classInstance->doStuff();
}
}
然后你可以这样称呼它:
$newClassInstance = new importedClass();
$newClassInstance->init();
Foo::fooMatic($newClassInstance);