Le PHP - Intégration au HTML

profThiernesse
4,009 views

Open Source Your Knowledge, Become a Contributor

Technology knowledge has to be shared and made accessible for free. Join the movement.

Create Content
Previous: Include Next: Références

Les structures de contrôle

Les différentes structures de contrôle peuvent être utilisées afin de générer du code HTML.

Les principales structures de contrôle sont :

  • Alternatives
  • Répétitions
  • Fonctions

Exemple 1

Le premier exemple utilise simplement le fonction date() pour afficher une date dynamique à chaque appel de la page.

Exemple date
<html>
<head>
<title>Exemple</title>
<meta charset="UTF-8">
</head>
<body>
<h1>Un page avec la date courante</h1>
<p>Nous sommes actuellement le
<?php
echo date("d/m/Y") . " il est " . date("G:i:s");
?>
</p>
<p>
La date n'évolue pas seule. Elle ne change que chaque fois que la page est rechargée.
<em>Attention: la date affichée est la date sur le serveur.</em>
</p>
</body>
</html>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Exemple 2

Cet exemple utilise l'alternative pour afficher le contenu selon que les minutes de l'heure courante sont paires ou impaires.

Exemple Alternative
<html>
<head>
<title>Exemple</title>
<meta charset="UTF-8">
</head>
<body>
<h1>Un page signalant si les minutes sont paires ou impaires</h1>
<p>Il est <?php echo date("G:i:s"); ?></p>
<p>Le nombre des minutes est une valeur :
<?php
if (date("i")%2==0)
echo "paire.";
else
echo "impaire.";
?>
</p>
<h2>En utilisant l'alternative ternaire</h2>
<p>Le nombre des minutes est une valeur : <?php echo (date("i")%2==0) ? "paire." : "impaire."; ?></p>
</body>
</html>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Exemple 3

Les entrées d'un menu sont sauvées dans un tableau, les clés sont les noms du menu et les contenus sont les liens vers lesquel ils renvoient. L'exemple utilise une boucle pour afficher le menu.

Exemple Répétition
<?php
$menu['Google'] = "http://www.google.be";
$menu['Base PHP'] = "https://tech.io/playgrounds/34845/le-php---les-bases-du-langage/introduction";
$menu['w3schools'] = "https://www.w3schools.com/";
$menu['Références PHP'] = "http://php.net/";
?>
<html>
<head>
<title>Exemple</title>
<meta charset="UTF-8">
</head>
<body>
<h1>Les bases d'un menu</h1>
<article>
<h2>Informations</h2>
<p>
L'affichage ci-après n'inclut aucune mise en forme.
Avec l'ajout de CSS, on obtiendra un menu ressemblant à un menu.
</p>
</article>
<nav>
<h2>Le menu</h2>
<ul>
<?php
foreach($menu as $nom => $url)
echo "<li><a href='$url'>$nom</a></li>";
?>
</ul>
<p>
<em>Remarque :</em> Les liens externes à tech.io ne sont pas nécessairement fonctionnels pour des raisons de sécurité.
</p>
</nav>
</body>
</html>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Exemple 4

Dans l'exemple suivant, on a un peu amélioré l'exemple 3. La fonction display_menu permet d'afficher le menu passé en paramètre. Cette fonction ainsi que 2 menus possibles sont conservés dans un fichier qui sera inclus dans la page principale.

Le fichier inclus contient également une fonction renvoyant 1 ou 0 selon que l'année passée en paramètre est bissextile ou non.

Exemple Fonction
<?php include("exemple4.inc.php"); ?>
<html>
<head>
<title>Exemple</title>
<meta charset="UTF-8">
</head>
<body>
<h1>Les bases d'un menu</h1>
<article>
<h2>Informations</h2>
<p>
L'affichage ci-après n'inclut aucune mise en forme.
Avec l'ajout de CSS, on obtiendra un menu ressemblant à un menu.
</p>
</article>
<nav>
<h2>Le menu</h2>
<ul>
<?php
display_menu($menu_techio);
?>
</ul>
<p>
<em>Remarque :</em> Les liens externes à tech.io ne sont pas nécessairement fonctionnels pour des raisons de sécurité.
</p>
<p>
Le menu passé en paramètre peut-être modifié pour afficher un menu différent.
</p>
</nav>
<article>
<h2>Fonction sans affichage</h2>
<p>Nous allons ici utiliser le résultat d'une fonction sans affichage pour afficher si nous sommes dans une année bissextile ou non<p>
<p>
<?php
echo date("Y") . " est une année : ";
if (bissextile(date("Y")))
echo "bissextile";
else
echo "non-bissextile";
?>
</p>
</article>
</body>
</html>
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Open Source Your Knowledge: become a Contributor and help others learn. Create New Content