printf et sprintf
ChMat
Webmaster
Je rebondis sur
le message de Jag! au sujet des fonctions printf et sprintf. Un truc me turlupine.
En admettant qu'une chaîne contienne plusieurs variables, comment les renseigne-t-on ? %s, %s, %s ? Et si dans une langue il faut modifier leur ordre d'apparition ?
ChMat, qui devrait se refaire une cure de php.net

Posté le 28/11/2006 à 22:15:00
Re : printf et sprintf
Jag!
Conseil & Astucier
Scout Web Portail
alors deja la difference entre les deux: printf remplace les variable et affiche le resultat comme le ferait un print ou un echo alors que sprintf renvoie la chaine de caractère une fois les variables remplacées. pour ce qui est des variables multiples, il suffit de rajouter des arguments à la fonction:
Code :<?php
$format = 'Il y a %d singes à %s';
printf($format, $nombre, $ville);
?>
(ici le %d force que ce soit un nombre mais je vous invite à lire la doc pour tous les formats)
Bien sur l'ordre ici à de l'importance alors on peut faire comme ca:
Code :<?php
$format = 'La ville de %2$s contient %1$d singes.';
printf($format, $nombre, $ville);
?>
Le chiffre apres le % represente la variable à utiliser

Posté le 29/11/2006 à 10:24:12