j'ai ce code:comment rendre les objets globalement accessibles?
class IC_Core {
/**
* Database
* @var IC_Database
*/
public static $db = NULL;
/**
* Core
* @var IC_Core
*/
protected static $_instance = NULL;
private function __construct() {
}
public static function getInstance() {
if (! is_object(self::$_instance)) {
self::$_instance = new self();
self::initialize(self::$_instance);
}
return self::$_instance;
}
private static function initialize(IC_Core $IC_Core) {
self::$db = new IC_Database($IC_Core);
}
}
mais quand je veux l'accès IC_Database avec:
$IC = IC_Core::getInstance();
$IC->db->add() // it says that its not an object.
je pense que le problème réside dans l'auto :: $ db = new IC_Database (IC_Core $);
mais je ne sais pas comment le faire fonctionner.
Quelqu'un pourrait-il me donner un coup de main =)
merci!
merci cela a fonctionné! –
Il semble y avoir peu de raison d'avoir un '$ _instance' statique avec un' $ db 'non statique. – Tgr
@Tgr: le '$ db' est local à l'instance, mais il n'y en a qu'un seul. Cela fonctionne de la même manière. –