mardi 15 avril 2014

Design pattern - Fluent Interface

Préface

Dans ce court billet j'explique à quoi sert un design pattern Fluent Interface et je donne un exemple concret de ça implémentation dans une classe PHP5.

Design pattern - Fluent Interface

Le design pattern Fluent interface sert à réaliser les appels des méthodes d'un objet en chaîne. Cet concept permet de rendre le code plus lisible et aussi considérablement réduire le nombre des lignes.

Vous pouvez également lire une définition donné par Wikipedia : http://en.wikipedia.org/wiki/Fluent_interface

Voici un exemple

class Message {

	/**
	 * @var String $_message une variable qui contient un message
	 */

	private $_message = null;

	/**
	 * @param String $message un message à établir
	 * @return Message $this pointeur vers instance en cours – réalisation d'une fluent interface
	 */

	public function set($message=null) {
		$this->_message = $message;
		return $this;
	}

	/**
	 * @return String une variable de classe qui contient un message
	 */

	public function get() {
		return $this->_message;
	}
}


// instancier un objet Message
$object = new Message();

// établir un message, et le récupérer 
// via une fonction get grâce à fluent interface
$message = $object->set('hello')->get();

// afficher un message
echo $message . "\n";

lundi 14 avril 2014

Design pattern - Front Controller

Préface.

Dans ce billet je vais expliquer à quoi sert un design pattern Front Controller et comment faire ça mise en ouvre sous un serveur web Apache2.

Lire la suite

jeudi 10 avril 2014

URI Checker : vérification des URLs, une signature et durée de vie

Préface

Dans ce billet, je vais traiter une question de vérification des URIs. La vérification de l’URI est un sujet important qui s’applique à plusieurs domaines, voici quelques-uns :

  1. Des appels à des Web Services
  2. Un lien d’activation (activation d’une inscription sur un site ou un forum de discussion)
  3. Un lien de téléchargement (un fichier vendu via un site d’e-commerce, par exemple)

Lire la suite

mercredi 15 janvier 2014

PHPIZ un Framework PHP5

Préface

Je commence le développement d’un Framework et par la même occasion une série d’articles dédiés au sujet. Au fur et à la mesure d’avancement je publierais des nouveaux articles. J’ai décidé de développer mon propre Framework PHP5. Il fut un temps quand l’idée de créer un Framework me paraissait une aberration et puis j’ai grandi.

Lire la suite

mardi 7 janvier 2014

SAMBA, suivi des liens symboliques (samba follow symlinks)

Problème :

Lorsque on clique sur une lien symbolique dans une répertoire partage Samba sous Linux un message d'erreur s'affiche.

Exemple :

J'ai un répertoire partagé au travers de Samba sur host Linux. Répertoire contiens un lien symbolique vers un autre répertoire. Voici une exemple d'arborescence :

/home/web/vhosts/ => un répertoire avec les hosts virtuelles d'un serveur Web
/home/igor.zlobine/partage => une répertoire partagé
/home/igor.zlobine/partage/mes-vhosts => un lien symbolique qui permet accéder à /home/web/vhosts/

Quand j'accède au répertoire via partage via explorateur Windows ou Mac, et quand j'ai clique sur le répertoire « mes-vhosts » j'ai un message errer qui s'affiche – du genre «access refusé».

Lire la suite