遵循此帖子中的建议:php class as a plugin in wordpress
我已经创建了一个辅助类,可以与其他插件一起使用。在类文件中,我有一个激活类的声明,如:
function test_init() {
$test = new Test();
} // End of test_init()
我可以通过执行以下操作来访问此类中的函数:
Test::my_function();
但是,我在引用这个类中的函数时遇到了问题。例如:
function my_function() {
Test::other_func();
}
在这种情况下,我收到错误消息:“函数名称必须是字符串”
我尝试了$ this-> other_func,它返回错误:“Class_Using_The_Test_Class中没有函数”other_func“。
我试过self :: other_func,它返回错误:“函数名必须是字符串”
我尝试使用call_user_func()并获得:“call_user_func()期望参数1成为有效的回调”
如何调用此类中的其他函数?
答案 0 :(得分:1)
您实际上并不需要激活该课程。我举个例子。
我们假设此代码位于helper-class.php
:
<?php
class Helper_Class {
// Note: those are double underscores before the word 'construct'.
function __construct() {
// initialize/call things here.
$this->init(); // this is how you call class functions.
}
function init() {
// do some monkey-business
return;
}
// we'll call this function from our other class.
function some_function() {
// do the fancy whizbang.
}
}
?>
现在,在您的其他类文件中,您可以这样的内容:
<?php
// give ourselves access to the helper class.
require_once 'helper-class.php';
class Main_Class {
// Note: those are double underscores before the word 'construct'.
function __construct() {
$this->init();
}
function init() {
// classes can't be used until an object of that class is created.
$helper_class_object = new Helper_Class;
// now I can call functions in my helper class.
$helper_class_object->some_function();
return;
}
}
?>
我希望这会对你的情况有所了解。请问您是否想要进一步澄清。 :)