PHP中的singleton行为异常
我试图在PHP中实现一个单例,但由于某些原因,每次静态变量$instances为null时,它都会被重新初始化PHP中的singleton行为异常,php,singleton,Php,Singleton,我试图在PHP中实现一个单例,但由于某些原因,每次静态变量$instances为null时,它都会被重新初始化 class Enteliprint_Model_EnteliService { public static $instances; static public function getSingltoneInstances() { DebugBreak(); if (NULL == Ent
class Enteliprint_Model_EnteliService {
public static $instances;
static public function getSingltoneInstances() { DebugBreak();
if (NULL == Enteliprint_Model_EnteliService::$instances) {
$result = array();
foreach (Enteliprint_Model_EnteliPrint::getEnteliPrintInstances(True) as $instance) {
$associatedSceddules = json_decode($instance['AssocSchedules']);
$scheduleIDs = '-1,';
foreach ($associatedSceddules as $key=>$schedule) {
$scheduleIDs = $scheduleIDs.($key > 0 ? ', ' : '').$schedule->ID;
}
$instance['AssocFilters'] = Enteliprint_Model_EnteliFilter::getEnteliFilternstances($scheduleIDs);
$result[] = $instance;
}
Enteliprint_Model_EnteliService::$instances = $result;
}
return Enteliprint_Model_EnteliService::$instances;
}
public static function sendEvents($events) {
$instances = Enteliprint_Model_EnteliService::getSingltoneInstances();
有什么想法吗?检查foreach循环中的内容。在同一个类中,使用self::而不是类名空数组等于null。调试foreach循环之后$result的内容。在for each循环中,调试建议正常检索值,也使用self::但没有任何更改