Aller au contenu

Programmation PHP/Premier programme

Un livre de Wikilivres.

Écrivons notre premier programme PHP. Pour le moment nous nous contenterons d'afficher le fameux "Hello World".

La commande shell est[1] :

php -r "print 'Hello World!';"

Dans un fichier

[modifier | modifier le wikicode]

Soit le fichier HelloWorld.php ci-dessous, il peut être lancé par :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
  <head>
    <title>Mon premier script PHP !</title>
  </head>
  <body>
    <p><?php echo 'Hello World!'; ?></p>
  </body>
</html>

Étude du code

[modifier | modifier le wikicode]

Le terme echo représente une fonction propre à PHP qui a pour rôle d'afficher du texte, mais on peut aussi utiliser la fonction print à la place.

Quant à 'Hello World', il est écrit entre apostrophes pour indiquer qu'il s'agit de texte, mais on peut aussi utiliser des guillemets à la place.

Enfin, le point-virgule (;) sert à indiquer la fin de l'instruction. On peut donc placer plusieurs commandes sur une seule ligne.

Il s'agit d'une erreur fréquente quand on débute en PHP. Elle est généralement due à une erreur de syntaxe. Cela peut être simplement à cause de l'omission d'un point-virgule ou bien par ce que vous avez une apostrophe qui gène.

Exemple de code erroné :

<?php
  // Parse error assurée
  echo 'J'irais bien boire un coup.';

Ne s'affichera pas, pour ce faire il faut juste mettre un antislash (\) devant notre apostrophe.

Exemple de code opérationnel :

<?php
  // Antislash et c'est bon
  echo 'J\'irais bien boire un coup.';


On peut aussi rendre plus lisible le code source en utilisant les caractères suivants :

  • \n : saut de ligne,
  • \t : tabulation,
  • \r : retour de chariot.

Attention : Ces caractères ne sont interprétés par le moteur PHP que s'ils sont introduits à l'aide de double apostrophe (guillemets) :

  echo "Retourne à la ligne\n";

Vous pouvez remarquer que l'exemple précédent est constitué de deux langages HTML et PHP, vous remarquerez aussi que le script est placé entre les balises <body></body> ce n'est pas une obligation ainsi le code suivant retourne la même chose :

<?php
  $texte= 'Hello World';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
  <head>
    <title>Mon premier script PHP !</title>
  </head>
  <body>

    <?php
      echo ($texte);
    ?>

  </body>
</html>

Particularités de PHP CLI

[modifier | modifier le wikicode]

PHP en ligne de commande possède plusieurs différences avec PHP sur serveur Web :

  • Les variables superglobales sont différentes : il n'y a pas de $_GET, $_POST et $_COOKIE.
  • Les paramètres (après le nom du script) sont récupérables par la variable globale $argv, et leur nombre par $argc (ou $_SERVER['argc'] si "register_globals = off;" dans php.ini).
global $argv;
global $argc;