
在使用 PHPCMS 时,调用方法和访问类方法主要依赖于框架的加载机制和对象实例化方式。下面分情况说明常用的操作方式。
一、模块中调用本地类方法
如果你在开发一个模块(如 content 模块),类方法通常定义在对应的控制器或模型中。
1. 控制器中调用自身方法:
在控制器文件(如 content.php)中,可以直接调用当前类的方法:
立即学习“PHP免费学习笔记(深入)”;
class content extends pc_base { public function init() { echo “初始化”; } public function show() { $this->init(); // 直接调用本类方法 }}
2. 调用模型中的方法:
先通过 load_model 加载模型,再调用其方法:
$content_model = pc_base::load_model(‘content_model’);$data = $content_model->get_one(array(‘id’ => 1));
二、跨类或工具类方法调用
PHPCMS 提供了 pc_base::load_app_class() 和 pc_base::load_sys_class() 来加载应用类或系统类。
1. 调用其他模块的类:
// 加载会员模块的用户类$member = pc_base::load_app_class(‘member’, ‘member’);$member->login($username, $password);
2. 调用系统类(如数据库、缓存):
// 加载数据库类$db = pc_base::load_sys_class(‘db’);$result = $db->select(‘* FROM v9_news’, ‘*’, ”, ‘id DESC’, 5);
三、静态方法调用
对于定义为 static 的方法,可以直接通过类名调用,无需实例化。
class util { public static function format_time($time) { return date(‘Y-m-d’, $time); }}// 调用echo util::format_time(TIMESTAMP);
四、模板中调用 PHP 方法(不推荐直接写逻辑)
模板中一般不建议直接调用方法。如需输出数据,应在控制器中处理并 assign 给模板。
若必须在模板执行简单函数,可使用:
{eval echo util::format_time($time);}
但更安全的方式是通过全局函数或在 php 标签中处理。
基本上就这些常见调用方式。关键是理解 PHPCMS 的类加载机制和作用域,合理使用 pc_base 提供的静态方法来获取类实例。

评论(0)