Es muy simple:
Código PHP:
class Singleton {
private $variable;
private static $_instance = null;
private function __construct() {
$this->variable = "inicio";
}
public static function getInstance() {
if( !self::$_instance instanceof self ) {
self::$_instance = new self();
}
return self::$_instance;
}
public function setMessage($var) {
$this->variable = $var;
}
public function getMessage() {
return $this->variable;
}
}
Solo es controlar que exista una instancia del objeto, y es lo que te provee el patron Singleton. Puedes ver como funciona asi:
Código PHP:
$objeto = Singleton::getInstance();
echo $objeto->getMessage(); // Imprime "Inicio"
function algo() {
$obj = Singleton::getInstance();
$obj->setMessage("Cambiado desde dentro de algo!!!");
}
algo();
echo $objeto->getMessage(); // Imprime: "Cambiado desde dentro de algo!!!"
Saludos.