Source: lesson_16_function_printf.php | Résultat |
<?php /* string sprintf ( string $format [, mixed $args [, mixed $... ]] ) retourne une chaîne formatée, avec le format format , en utilisant les arguments args . */ echo "<h4>Une seule commande: printf(paramètres,chaîne)</h4>"; $chaine_in = "Lundi"; $remplisseur = "."; $alignement = "-"; $taille = 20; $précision = ""; $type ="s"; myPrintf($chaine_in,$remplisseur,$alignement,$taille,$précision,$type) ; echo "<p></p>";
$chaine_in = "Mardi"; $remplisseur = "_"; $alignement = ""; $taille = 15; $précision = ""; $type ="s"; myPrintf($chaine_in,$remplisseur,$alignement,$taille,$précision,$type) ; echo "<p></p>";
$chaine_in = 3.14116; settype($chaine_in, "float"); $remplisseur = ""; $alignement = ""; $taille = ""; $précision = ".2"; $type ="f"; myPrintf($chaine_in,$remplisseur,$alignement,$taille,$précision,$type) ; //----------------------------------------------------------------- echo "<p><hr></p>"; echo "<h4>Plusieurs commandes de format dans une chaine <br/> pratique pour formatter un extrait de base de donnée</h4>";
$chaine_in = "Il y a %d livres ecrits par %'.10s"; $param_1 = 15 ; $param_2 = "Coelho"; myPrintf_2($chaine_in,$param_1,$param_2); // $chaine_in = "Il y a %d articles dans le rayon %s"; $param_1 = 124 ; $param_2 = "«jouets»"; myPrintf_2($chaine_in,$param_1,$param_2); echo "</table>";
//---------------------------------------------------------- function myPrintf($chaine_in,$remplisseur, $alignement,$taille,$précision,$type) { echo "<table class=fly><tr> <th class=params rowspan=2>Paramètres</th> <th class=params>Align.</th> <th class=params>Remplis.</th> <th class=params>Taille</th> <th class=params>Précis.</th> <th class=params>Type</th></tr>"; echo "<tr> <td class=params>$alignement</td> <td class=params>$remplisseur</td> <td class=params>$taille</td> <td class=params>$précision</td> <td class=params>$type</td></tr> <tr> <th class=inputs>Entrée</th> <td class=inputs colspan=5>$chaine_in</td></tr> <tr> <th class=outputs>Sortie</th><td class=outputs colspan=5>"; if ($précision) $params = "%".$alignement.$remplisseur.$taille.$précision.$type; else $params = "%".$alignement."'".$remplisseur.$taille.$type;
printf($params, $chaine_in); echo "</td></tr><tr>"; echo "</table>"; } //------------------------------------ function myPrintf_2($chaine_in,$param_1,$param_2) { echo "<table class=fly><tr> <th class=params rowspan=2>Paramètres</th> <th class=params >Param_1</th> <th class=params >Param_2</th></tr> <tr> <td class=params >$param_1</td> <td class=params >$param_2</td></tr><tr> <td class=inputs >Entrée</td> <td class=inputs colspan=8>$chaine_in</td></tr><tr> <td class=outputs >Sortie</td> <td class=outputs colspan=8>"; printf($chaine_in,$param_1,$param_2); echo "</td></tr><tr>"; echo "</table>"; }
| Une seule commande: printf(paramètres,chaîne)
Paramètres |
Align. |
Remplis. |
Taille |
Précis. |
Type |
- |
. |
20 |
|
s |
Entrée |
Lundi |
Sortie | Lundi............... | |
Paramètres |
Align. |
Remplis. |
Taille |
Précis. |
Type |
|
_ |
15 |
|
s |
Entrée |
Mardi |
Sortie | __________Mardi | |
Paramètres |
Align. |
Remplis. |
Taille |
Précis. |
Type |
|
|
|
.2 |
f |
Entrée |
3.14116 |
Sortie | 3.14 | |
Plusieurs commandes de format dans une chaine
pratique pour formatter un extrait de base de donnée
Paramètres |
Param_1 |
Param_2 |
15 |
Coelho |
Entrée |
Il y a %d livres ecrits par %'.10s |
Sortie |
Il y a 15 livres ecrits par ....Coelho | |
Paramètres |
Param_1 |
Param_2 |
124 |
«jouets» |
Entrée |
Il y a %d articles dans le rayon %s |
Sortie |
Il y a 124 articles dans le rayon «jouets» | |
|