Journal du Net Développeur >  PHP >  Guide pratique PHP

Guide pratique PHP > 3. Le langage

Précédente 4. Les outils 
  Sommaire
 Le langage
Le langage
La syntaxe de PHP prend donc son origine dans plusieurs autres langages, empruntant les éléments les plus logiques et utiles. La forme générale est donc celle du langage C, mais nombre de fonctions initiales (traitement de chaînes pour la plupart) étaient reprises directement de C (strstr(), substr()...) et Perl (printf(), split(), ...). De la même manière, PHP reprend la syntaxe de commentaire de C, C++ et Perl.

Ces influences multiples, et l'évolution rapide des fonctions proposées par le langage - reprenant à son compte le principe du There is more than one way to do it - sont par ailleurs responsables de l'une des principales critiques envers le langage : le grand nombre de fonctions standards (plus de 3000), leur disparité syntaxique, et leurs incohérences d'implémentation. Cela reste cependant la seule véritable critique quand à la productivité du développement PHP.

La définition de fonction personnelle reste de son côté proche de celle utilisée en C++ :
  1. <?php
  2. function nomDeLaFonction($arg1, $arg2, $arg3='valeurParDefaut', $arg4) {
  3.   // bloc interne de la fonction
  4.   }
  5. ?>
En revanche, la syntaxe de création d'une classe et d'un objet se démarque déjà plus de C++ (lire notre article du 31/01/03) :
  1. <?php
  2. class NomDeLaClasse {
  3.   public nomDeLaVariable = 'valeur';
  4.   public function nomDeLaMéthode ($arg) { ... }
  5.   }
  6.  
  7. $objet = new NomDeLaClasse; // instanciation de l'objet
  8. $objet->nomDeLaMéthode('lapin'); // appel d'une méthode
  9. $var = NomDeLaClasse::nomDeLaVariable; // appel d'un élément interne de la classe
  10. ?>
Précédente Retour au sommaire Suivante 
Introduction | 1 | 2 | 3 | 4
 
|
Haut de page
Nos autres sites Société | Mentions légales | Contacts | Publicité | PA Emploi | Presse | Recrutement | Tous nos sites | Données personnelles
© Benchmark Group, 69/71 avenue Pierre Grenier. 92517 Boulogne Billancourt Cedex