Espace membres

Bonjour Anonyme

Inscription

Email :
Mot de passe :

Mot de passe oublié ?

Nos scripts

MySpeach

MySpeach est un chat php sans base de donnée, rapide, léger et facile à prendre en main. DEMO

MyPHPUpload

MyPHPUpload est un script d'upload sécurisé écrit en PHP. DEMO

GrapAgenda

Agenda PHP et MySQL avec comptes utilisateurs et administration. DEMO

Livre PHP

création de site

Manipulation de chaine de caractere

Cours / tutoriel écrit le 17-06-2010 par sky

Exemple de manipulation de chaine de caractère

La manipulation de chaine de caractères ... Ca c'est un chapittre infini je crois. Je vais essayer sur cette page de mettre juste quelques exemple pour que vous puissiez vous en inspirer.

printf (PHP 3, PHP 4 )
Affiche une chaîne de caractères formattée
void printf ( string format [, mixed args])
printf() affiche les arguments args formaté sous forme de chaîne de caractères grâce à args. Les options de formatage sont documentés avec la fonction sprintf().

Le code :
<?php
echo 'Date : ';
printf("%02d/%02d/%04d", 20, 5, 2002);
echo '<br />Pi avec 7 decimales : ';
printf("%.6f", M_PI);
?>

Afichera :
Date : 20/05/2002
Pi avec 6 decimales : 3.141592



substring (PHP 3, PHP 4 )
Retourne un segment de chaîne
string substr ( string string, int start [, int length])
substr() retourne le segment de string définit par start et length. Si start est positif, la chaîne retournée commencera au caractère numéro start, dans la chaîne string. Le premier caractère est numéroté zéro.

Le code :
 <?php
echo substr("abcdefghij", 2);
echo "<br />";
echo substr("abcdefghij", 0, 3);
echo "<br />";
echo substr("abcdefghij", 1, 4);
echo "<br />";
echo substr("abcdefghij", 5, 20);
echo "<br />";
echo substr("abcdefghij", -3, 2);
echo "<br />";
echo substr("abcdefghij", 2, -1);
?>

Affichera :
cdefghij
abc
bcde
fghij
hi
cdefghi



substr_replace (PHP 3, PHP 4, PHP 5)
string substr_replace ( string string , string replacement , int start , int length )
substr_replace remplace un segment de la chaîne string par la chaîne replacement . Le segment est délimité par start et éventuellement par length . Le résultat est retourné.

Le code :
 <?php
echo substr_replace("abCDEF","AB",0,2);
echo "<br />";
echo substr_replace("100000 Euros",",",-9, 0);
?>

Affichera :
ABCDEF
100,000 Euros



strtr
Remplace des chaînes dans une chaîne
string strtr ( string str , string from , string to ) string strtr ( string str , array replace_pairs )
strtr retourne la chaîne str , après avoir remplacé chaque caractère du paramètre from par son équivalent dans le paramètre to . Si from et to sont de tailles différentes, les caractères en trop dans l'un ou l'autre seront ignorés.

Le code :
 <?php
$phrase = "Les accents sur à, é, è, ù, ê, ô vont être supprimés";
echo $phrase."<br />";
$remplacements = array('à' => 'a',
'é' => 'e',
'è' => 'e',
'ù' => 'u',
'ê' => 'e',
'ô' => 'o',
'vont être' => 'ont étés' );
$phrase = strtr($phrase, $remplacements);
echo $phrase;
?>

Affichera : [quote]Les accents sur à, é, è, ù, ê, ô vont être supprimés
Les accents sur a, e, e, u, e, o ont étés supprimes[/code]


Récapitulatif :
Pour voir l'ancienne page : chaine php

addslashes()
Ajoute des anti-slashes devant les caractères spéciaux : $res = addslashes("L'a");
Résultat : L'a

stripslashes()
Retire les anti-slashes devant les caractères spéciaux. : $res = stripslashes("L'a");
Résultat : L'a

dechex()
Retourne la valeur Hexadécimale d'un nombre (ici 2548). $res = dechex("2548");
Résultat : 9f4

ceil()
Retourne le nombre entier supérieur ici (12,1). $res = ceil("12.1"); *
Résultat : 13

chunk_split()
Permet de scinder une chaîne en plusieurs morceaux. $res = chunk_split("DGDFEF","2","-");
Résultat : DG-DF-EF-

htmlentities()
Remplace les caractères par leur équivalent HTML (si ils existent). $res = htmlentities("&");
Résultat : &amp;

strstr()
Recherche le premier caractère 'p' dans la chaîne et affiche le reste de la chaîne y compris le 'p'. $res = strstr ("[email protected]", "p");
Résultat : phpdebutant.com

strlen()
Retourne la longueur de la chaîne $res = strlen("lachainedecaracteres");
Résultat : 20

strtolower()
Passe tous les caractères en minuscules. $res = strtolower("LA CHAINE dE caRActERes");
Résultat : la chaine de caracteres

strtoupper()
Passe tous les caractères en MAJUSCULES. $res = strtoupper("LA CHAINE dE caRActERes");
Résultat : LA CHAINE DE CARACTERES

str_replace()
Remplace un caractère par un autre dans une chaîne. Tiens compte de la casse. $res = str_replace("a","o","Lalala");
Résultat : Lololo

trim()
Efface les espaces blancs (n, r, etc) au début et à la fin d'une chaîne (pas au milieu). $res = trim(" Salut le monde ");
Résultat : Salut le monde

ucfirst()
Met la première lettre de chaque chaîne en Majuscule. $res = ucfirst("salut le monde. ca va ?");
Résultat : Salut le monde. ca va ?

ucwords()
Met la première lettre de chaque mot d'une chaîne en Majuscule. $res = ucwords("salut le monde");
Résultat : Salut Le Monde

strpos()
Recherche la position du premier caractère trouvé. Retourne le nombre de caractères placés avant lui (ici 4). $res = strpos("abcdef","e");
Résultat : 4

ereg()
Recherche si une chaîne de caractère est contenue dans une autre (ex. recherche si "ABCDE" contient "BCD"). if(ereg("BCD","ABCDEF"))
{echo "oui";} else {echo "non";}
Résultat : oui


* La virgule sous PHP est représentée par un point "." , ainsi 12,1 s'écrit : 12.1 !

Commentaires

nicky le 25-09-2011

vraiment génial ce tuto ! merci :)

roro le 14-04-2011

c'est très cooooooooooooool

sky le 30-08-2010

Faut que je mette cette page à jours pour PHP 5.3. Depuis PHP 5.3 ereg et eregi ne doivent plus être utilisés. On peux utiliser à la place preg_match ou encore preg_match_all.

jackomony le 29-08-2010

merci pour trim() et ereg(), g ne savais pas qu'ils existaient en php!!!

Pseudo
Email
Commentaire

Merci d'écrire le code ici :