5 plugins indispensables pour coder en PHP avec l’IDE Eclipse

April 13th, 2009

L’IDE Eclipse, conçu à l’origine pour développer en Java, s’est enrichi de fonctionnalités avancées, sous forme de plugins, qui lui permettent aujourd’hui de jouer dans la cours des grands des éditeurs de code PHP. Tour d’horizon de ceux que j’utilise. Read more…

Développement Web , , , ,

Moteur de template : Smarty

March 9th, 2009

Smarty est un moteur de template. Basiquement, l’utilité d’un moteur de templates est de séparer le code métier de l’affichage que génèrera votre application web. Smarty se présente sous la forme d’une classe qui gère un langage de balises permettant d’afficher dynamiquement du code. Ces templates sont compilés et mis en cache (les versions compilées étant en php, elles profitent d’éventuels accélérateurs comme APC). Le moteur de template Smarty est si riche de fonctionnalités que je lui consacrerai une série d’articles. Pour commencer, nous verrons l’utilisation basique de Smarty, l’utilisation du tag {literal} ainsi que la gestion des dates.
Read more…

PHP , , , , ,

La commande screen sous Linux

February 12th, 2009

Si comme moi, vous bossez régulièrement en ligne de commande sous Linux (en SSH sur un serveur dédié, par exemple), il doit vous arriver de devoir jongler entre deux applications, deux répertoires, deux scripts… Bref, si vous passez beaucoup de temps à switcher entre deux tâches, screen est fait pour vous.
Read more…

Admin serveur , , , , ,

Cache d’opcode: Alternative Php Cache (APC)

December 9th, 2008

Pour accélerer les performances d’un site internet, il existe de nombreuses pistes à suivre. Outre les recommandations d’optimisation de Yahoo, qui concernent surtout l’architecture d’une application Web, on peut aussi s’attaquer à des couches plus transparentes (et souvent complètement ignorées par les développeurs), comme l’étape de “compilation” du script en exécutable. Nous allons voir comment APC (Alternative Php Cache) peut nous aider rapidement à accélérer des scripts php.
Read more…

PHP , , , ,

Parser des XML volumineux avec XMLReader

November 28th, 2008

Avec des classes comme DomDocument ou SimpleXML, le parsing de fichiers XML s’est considérablement simplifié en PHP 5. Mais quand on doit parser des fichiers très volumineux (comme j’ai eu à le faire récemment pour le catalogue produits de mon comparateur d’électroménager), on se retrouve très rapidement avec des scripts très gourmands en mémoire. En effet, ces classes lisent et analysent la totalité du fichier XML avant de pouvoir agir dessus. Ce n’est pas le cas de XMLReader, qui elle, fonctionne en mode flux: le fichier est alors lu au fur et à mesure des besoins. Il en résulte des scripts plus rapides et très peu consommateurs de RAM.
Read more…

PHP , , , , ,

Apache, VirtualHost et ServerAlias

October 20th, 2008

Lorsqu’on adapte la configuration d’un serveur Apache pour gérer un nouveau domaine, il faut théoriquement créer autant de VirtualHosts que ce qu’on aura de sous-domaines. Et si chaque utilisateur enregistré devait avoir son propre sous-domaine (comme sur une plate-forme de blogs, par exemple) ?
Read more…

Admin serveur , , , , ,

Changer d’hébergement : la migration de sites web

October 3rd, 2008

Vous avez un petit serveur sur lequel vous hébergez vos sites. Ces derniers ont grandi, grandi, et il est temps de prendre un serveur plus puissant, et donc de déplacer vos scripts et vos bases de données. C’est vrai, aucune compétence poussée des shells Unix n’est obligatoire ; vous pouvez très bien tout faire avec un client FTP et phpMyAdmin (par exemple). Mais cela suppose de tout copier de la machine A (le “petit” serveur) vers votre poste de travail, puis, de là, de tout envoyer, depuis votre poste, vers la machine B. En faisant tout depuis une ligne de commande, on supprime un intermédiaire. Laissons les machines s’arranger entre elles…
Read more…

Développement Web , , , ,

erreur 404, redirection 301: headers et codes de réponse HTTP courants

September 5th, 2008

Lorsqu’on se connecte à une page Web, le client (navigateur) envoie une requête, auquel le serveur qui traite la réponse, en suivant le protocole HTTP, renvoie un code de traitement à 3 chiffres.
Ce code se situe sur la première ligne de la réponse, et est de la forme :

  1. HTTP/1.1 200 OK

. En php, la fonction php header() permet, depuis vos scripts, d’adapter le code que le serveur renvoie, afin de “forcer” le comportement du navigateur client.
Petit tour d’horizon des codes les plus répandus.
Read more…

PHP , , , ,

Site multilingue: déterminer la langue du visiteur

August 13th, 2008

Sur les sites qui sont disponibles en plusieurs langues, il est fréquent de trouver une page “d’accueil” comportant plusieurs drapeaux ou un quelconque moyen de choisir son langage que l’on veut voir affiché. Cette pratique, aussi mauvaise pour le référencement qu’en termes d’ergonomie, peut facilement être évitée grâce au header “Accept-Language”.
Read more…

PHP , , , ,

Petit guide pour débuter avec Zend Framework: les bonnes pratiques

August 5th, 2008

A l’occasion de la sortie de la version 1.6_rc1, j’ai récemment trouvé le courage de me lancer dans la découverte du Zend Framework. Le Framework Zend est une base de développement fiable, s’appuyant sur les bonnes pratiques de programmation orientée objet (POO). Le code subit des tests poussés afin de répondre aux exigences de fiabilité, de rapidité et de sécurité des applications web modernes. La force de frappe de Zend est telle que le framework intègre déjà des classes permettant de manipuler simplement la plupart des API majeures du marché, telles que celles de Google (dont Youtube), Amazon, Yahoo…
Read more…

PHP