PHP 5 transforme PHP en un véritable langage objet. Il devient donc important d’utiliser l’expérience d’autres programmeur pour assurer une qualité maximum. Vous pouvez donc utiliser les design pattern en PHP5. Voici un exemple d’utilisation d’un singleton à travers la lecture d’un fichier de configuration.

Principe du singleton :

Le singleton permet de s’assurer qu’une seule instance d’un objet donné sera instanciée pendant toute la durée de votre application. Une seule dans l’espace comme dans le temps, c’est-à-dire :

  • l’espace représenté par la mémoire – vous êtes certain de l’unicité de l’instance à un moment donné
  • le temps – vous vous assurer de l’unicité de l’instance à chaque appel. J’entends par la que vous êtes certain que c’est la même instance que vous référer quelque soit le temps écoulé entre deux appels.

(extrait de la page http://smeric.developpez.com/java/uml/singleton/)

config = parse_ini_file ("conf.ini", TRUE);
	}

	public function loadIniFromPath ($path) {
		$this->config = parse_ini_file ($path."conf.ini", TRUE);
	}

	public function getProperty ($section, $key) {
		return $this->config[$section][$key];
	}

}
$config = Config::getInstance();
$config -> loadIni();

// Ici utilisation classique de l'objet ...
// ...

?>

Le principe du script est simple, création d’une variable statique dans laquelle nous insérons la référence de l’objet instancié. Ainsi l’appelle à la méthode getInstance assure l’application d’utiliser toujours la même instance de cette classe, et donc de n’avoir qu’un objet de ce type en mémoire.

pour plus d’info consultez l’excellent site de QWIX : http://qwix.media-box.net/