我已经为 opencart 编写了一个使用 vqmod 的模块。如何检查是否从管理模块中安装了 vqmod?
我想在模块内显示一条警告,检查是否安装了 vqmod?更好的是检查它是否也具有正确的写入权限来生成缓存文件并写入 vamod.log
这样做的最佳方法是什么?
PS:如果你可以用 vqmod 标记问题,那就太酷了。我没有足够的声誉来创建新标签。
/vqmod/install
如果已安装,它将告诉您“vqmod 已安装”
要通过代码检查,您需要执行
global $vqmod;
if(!empty($vqmod) && is_a($vqmod, 'VQMod')) {
// INSTALLED
} else {
//
}
虽然@NADH 是正确的,但它只检查 vqmod 的类是否已包含在内,而不是它是否已设置为$vqmod
变量
从 2.4.0 开始,这将不再有效,建议使用 NADH 的方法
<?php
if(class_exists('VQMod')) {
// vqmod exists
}
?>
根据您@John 的评论,由于您正在寻找确认 VQmod 已安装并正确执行,因此最安全的做法是检查您希望出现在 vqmod/cache 目录中的文件名。如果您自己创建了 vqmod/xml 定义文件,您将知道文件名。
您还可以像@NADH 建议的那样检查现有的 VQMod 类,但这并不意味着它工作正常。有点像编写单元测试,总是断言所需的输出。在这种情况下,它是您正在创建的缓存文件。