我有静态功能>这就是所谓的 regenerateThumbnailsCron()
我想通过GET params执行此功能,例如>
if($_GET["pass"]=="password")
self::regenerateThumbnailsCron();
但如果我试图在构造函数中调用此函数> class AdminImages扩展了AdminTab ...
public function __construct()
{
if($_GET["pass"]=="password")
self::regenerateThumbnailsCron();
}
我无法执行此功能。 无论如何,如何在__construct之前调用此函数来正确执行?
非常感谢任何建议。
编辑>
我还尝试使用公共功能>
<?php
include 'AdminImages.php';
$images = new AdminImages();
$images->regenerateThumbnailsCron();
?>
但是我得到了错误&gt; 致命错误:找不到“AdminTab”类
答案 0 :(得分:2)
你也需要做一个include 'AdminTab.php';
,因为你的课程扩展了
答案 1 :(得分:0)
我不完全确定我理解你的问题,你是说你有静态类“B”,它扩展了类“A”,“A”有你想要在其他任何事情之前调用的regenerateThumbnailsCron()方法吗?
如果是这样的话,试试这个:
<?php
class A {
private function regenerate() {
.... do something ....
}
}
class B extends A {
function __construct() {
if ($_GET["pass"] == "password") {
parent::regenerate();
}
}
function regenerateThunbnailsCron() {
.... do somethinig ....
}
}
$images = new B();
$images->regenerateThumbnailsCron();
?>
这样,在构造函数中将调用父级的“regenerate()”函数。如果你愿意,你可以将它转换为静态类,如果你的目标是将任何变量和函数划分为远离全局范围,那么这将是一种更好的方法。