Ceci est une ancienne révision du document !
PHP
Je me lance dans l'apprentissage de php, via le cours d'Openclassrooms. Cette page sert d'aide-mémoire sur le langage.
Bases
Insérer un bout de code php dans du html :
<?php ?>
- Toujours mettre un
;à la fin d'une instruction. - Commentaires sur une ligne :
// - Commentaires sur plusieurs lignes, encadrés par
/*et*/.
Fonctions
include()pour inclure une autre page. Ex :<?php include("bla.php"); ?>
Pour récupérer une fonction dans une variable (pour un echo par exemple) :
$var = fonction(paramètres);
Pour créer une fonction
<?php function NomDeLaFonction($parametre) { code; } ?>
Définir NomDeLaFonction et les paramètres et décrire la fonction dans les accolades.
Variables
Type de données
| Type de donnée | Exemple |
|---|---|
| string | “Du texte” |
| int | 42 |
| float | 14.7 |
| bool | true/false |
| NULL | (rien) |
Écrire une variable
Exemple :
<?php $age_du_capitaine = 17; ?>
Ne pas oublier : $ = ;
Conditions
| Symbole | Signification |
|---|---|
| == | Est égal à |
| > | Est supérieur à |
| < | Est inférieur à |
| >= | Est supérieur ou égal à |
| ⇐ | Est inférieur ou égal à |
| != | Est différent de |
if (condition/variable) {} facultatif else {}
Exemple
<?php $age = 8; if ($age <= 12) { echo "Salut gamin !"; } else { echo "Salut vieux !"; } ?>
Boucles
<?php while ($continuer_boucle == true) { // instructions à exécuter dans la boucle } ?> <?php $nombre_de_lignes = 1; while ($nombre_de_lignes <= 100) { echo 'bla<br />'; // Incrémenter le nombre de ligne : $nombre_de_lignes = $nombre_de_lignes + 1 $nombre_de_lignes++; } ?>
<?php for ($var = 1; $var <= 100; $var++) { echo 'Ceci est la ligne n°' . $var . '<br />'; } ?>
Pour for :
- La première variable est la valeur de départ de la variable
- La seconde est la condition : tant que var est inférieure à 100, la boucle est exécutée.
- La troisième est ce qui est exécuté, ici l'incrémentation.
Formulaires
Code html pour la partie cadres :
- Entrer une chaine de caractère (un nom par exemple) :
<input type="text" name="valeur" /> - Entrer une zone de texte (définir le nombre de lignes, largeur, etc) :
<textarea name="message" rows="8" cols="45">Exemple pré-remplit</textarea> - Valider (bouton) :
<input type="submit" value="Valider" /> - Liste déroulante :
<select name="choix"> <option value="choix1">Choix 1</option> <option value="choix2">Choix 2</option> </select> - Case à cocher (résultat on/rien):
<input type=“checkbox” name=“case” id=“case” /> <label for=“case”>Ma case à cocher</label>. “Label” permet de cliquer sur le texte plutôt que la case pour cocher (asssocieridetfor). - Bouton radio, avec l'un présélectionné avec l'attribut
checked=“checked”. Tous les boutons d'un même choix partagent le mêmename=.<input type=“radio” name=“question” value=“oui” id=“oui” checked=“checked” /> <label for=“oui”>Oui</label><input type=“radio” name=“question” value=“non” id=“non” /> <label for=“non”>Non</label> - Champs cachés : l'information est transmise, mais non affichée au lecteur :
<input type=“hidden” name=“pseudo” value=“monpseudo” />
Pour récupérer les donnés (pour name=) :
<form action="cible.php" method="post"> ... </form>(cible.php est le fichier où sera affiché le résultat après submit)
Sur les données récupérées par $_POST et $_GET, ajouter htmlspecialchars pour bloquer l'interprétation de balises html. Exemple :
<?php echo htmlspecialchars($_POST['prenom']); ?> !</p>
La fonction strip_tags enlèvera les balises html qui auraient pu être ajoutées.
Pour résumer :
<form action="cible.php" method="post"> <p> <input type="text" name="prenom" /> <br /> <textarea name="message" rows="8" cols="45"> Votre message ici. </textarea> <br />Choississez : <select name="choix"> <option value="choix1">Choix 1</option> <option value="choix2">Choix 2</option> <option value="choix3">Choix 3</option> <option value="choix4">Choix 4</option> </select> <br /> <input type="checkbox" name="case1" id="case1" /> <label for="case1">Ma case à cocher</label> <br /><input type="checkbox" name="case2" id="case2" /><label for="case2">Ma case à cocher 2</label> <br /><input type="checkbox" name="case3" id="case3" /><label for="case3">Ma case à cocher 3</label> <br /> Êtes-vous d'accord ? <input type="radio" name="frites" value="oui" id="oui" checked="checked" /> <label for="oui">Oui</label> <input type="radio" name="frites" value="non" id="non" /> <label for="non">Non</label> <br /> <input type="submit" value="Valider" /> </p> </form>