YBET

Rue Albert 1er, 7

6810 Pin - Chiny

Route Arlon - Florenville

(/fax: 061/32.00.15

Formation Internet: programmer son site Internet dynamique en PHP

YBET Contact  

6. Fonctions sur les variables en PHP

1. La fonction STRLEN(). - 2. Fonctions TRIM, RTrim,LTrim - 3. Majuscules - minuscules - 4. Manipulation et modifications de chaînes - 5. Commandes spécifiques aux variables nombres - 6. Pour les dates

Cette partie du cours PHP - MySQL va nous permettre d'étudier quelques fonctions PHP principales, spécifiques au traitement des chaînes de caractères et nombres.

1. Fonction STRLEN()

La fonction PHP STRLEN() renvoie la longueur de la chaîne de caractères.

<?PHP

$a=strlen("erer");

print($a);

?>

affiche le chiffre 4, le nombre de caractères de la chaîne erer.

3. Fonctions Trim, Rtrim, ltrim

Ces fonctions permettre de supprimer les blancs dans une chaîne de caractères.

Trim($variable) efface les blancs devant et derrière dans la chaîne de caractères, pas les espaces au milieu.

RTRIM($variable) supprime les blancs à droite de la chaîne de caractères. A partir de PHP 4.0.1, une opérante optionnelle a été rajoutée: rtrim($text,caractères à supprimer, par exemple: rtrim("Bonjour","jour") donne "Bon".

LTRIM($variable) supprime les blancs à gauche de la chaîne de caractères. A partir de PHP 4.0.1, une opérante optionnelle a été rajoutée: ltrim($text,caractères à supprimer), par exemple: ltrim("Bonjour","bon") donne "jour".

4. Minuscules - majuscules

5. Manipulation et modification de chaînes

Ces fonctions PHP vont modifier le contenu d'une chaîne de caractères.

ADDSLASHES($variable): ajoute les anti-slashes \ devant les caractères spéciaux. Cette fonction est utilisée pour les fonctions Print(''") et ECHO''" et lors d'introduction de valeurs via un formulaire. exemple: ADDSLASHES("L'entreprise") donne "L\'entreprise".

STRIPSLASHES($variable): supprime les anti-slashes, notamment utilisée lors de version imprimable.

CHUNK_SPLIT($variable,nb caractères, caractère de séparation): permet de scinder une chaîne de caractère. Exemple: CHUNK_SPLIT($bonbon,"3","-") donne bon-bon-

STRSTR($variable,"caractère") recherche le caractère et affiche le reste de la chaîne, y compris le caractère. Exemple: STRSTR("YBET informatique","i") affiche "informatique".

STR_replace("caractère à remplacer","caractère de remplacement",$variable) remplace dans la chaîne $variable les caractères à replacer par le caractère de remplacement et l'assigne à une variable. Cette fonction PHP tient compte de la casse. 

Exemple: $texte=STR_REPLACE("i","y'","ibet"). Print($texte); donne ybet.

SUBSTR (chaine, numero_depart [,longueur] ) récupère longueur caractères sans la chaîne à partir du numero de départ. 

Exemple: Il n'y a pas de fonction left en PHP. Pour récupérer les 5 premiers caractères d'une chaîne $chaine, la commande est SUBSTR ($chaine,0,5);

HTMlentities($variable) remplace le caractère par son équivalent HTML si possible. Exemple: HTMlentities(" ") affiche &nbsp;

EREG($variable1,$variable2) recherche si la chaîne $variable1 est contenue dans $variable2, renvoie une valeur logique. Exemple, vérification du pays suivant le numéro de TVA Cette fonction n'est plus à utiliser à partie de PHP 5.3.0 et renvoit une erreur (depreciated), utilisez la suivante STRPOS avec une condition false (ou <>0 qui fonctionne également mais pas trop conseillée)

STRPOS($variable,$variable1): revoie le nombre de caractère devant la lettre $variable1. Exemple: STRPOS ("YBET informatique,"i") renvoie le nombre 5. Si le résultat est 0, le caractère n'est pas repris dans la chaîne.

<?php

// remplacement de la commande EREG

if (STRPOS("BE718409912","BE")!== false){

echo"Belgique";}

else{

Echo"Hors Belgique";

}

?>

Explode($caractere,$chaine[,int limit]) coupe la variable texte $chaine en deux en supprimant le caractère de séparation $caractere. Le résultat est renvoyé sous forme de tableau. L'option limit (à partir de la version 4.0.1, une valeur entière) permet de définir le nombre maximum de lignes du tableau renvoyée par la fonction. La dernière ligne contient alors le reste de la chaîne. La fonction inverse est implode.

<?php

$tableau=array();

$chaîne="Ma maman est invitée";

$tableau=Explode("a",$chaine,2);

print($tableau[0]);

print($tableau[1]);

?>

Cette commande peut être couplée avec la commande list qui affecte les résultats à des variables comme ceci

<?php

$chaine="adresse@mail.com";

LIST ($nom,$serveur)=Explode("@",$chaine,2);

print($nom); // affiche adresse

print($serveur); // affiche mail.com

?>

nl2br($chaîne) affiche les sauts de lignes en remplaçant les /n par <br>. Nous en reparlerons

6. Spécifiques nombres

DECHEX($valeur): renvoie la valeur hexadécimale d'un nombre.

CEIL($valeur): renvoie le nombre entier supérieur.

FLOOR($valeur): renvoie le nombre entier inférieur

Round($valeur,$nb): renvoie l'arrondit de $valeur avec $nb chiffres derrière la virgule. Si $nb est omis, il est considéré comme 0 chiffres derrière la virgule.

is_int() renvoie true si le contenu est un entier, false sinon.

intval() convertit une chaîne en variable entière.

rand(min,max): ou min est la valeur minimale, max, la valeur maximale. Cette fonction renvoie une variable entière.

Exemple: $i=rand(0,5) $i sera compris entre 0 et 5 (6 valeurs possibles). Quelques hébergements limitent la valeur maximum à 32768. A défaut des paramètres RAND() renvoie un nombre compris entre 0 et le nombre maximum.

Nous verrons d'autres fonctions PHP dans les chapitres suivants mais ceux-ci sont les principaux.

7. Fonctions sur les dates

Depuis PHP 5.30., attention de précéder ces commandes par date_default_timezone_set('Europe/Brussels');

checkdate ( int mois, int jour, int année ): vérifie si une date est valide. mois doit être compris entre 1 et 12, jour entre 1 et 31 et année entre 1 et 32767. La fonction tient compte des années bissextiles. Remarquez que le format est anglophone. Le résultat est une valeur logique.

mktime ( [int heure [, int minute [, int seconde [, int mois [, int jour [, int année [, int is_dst]]]]]]] )  renvoie une valeur entière correspondant à la différence par rapport au 1er Janvier 1970 00:00:00 GMT en secondes. On appelle cette méthode le Timestamp. Cette commande permet de calculer des différences de dates. Pour le résultat inverse, utilisez la fonction date (format,int timestamp).

Exemple: mktime(0,0,0,30,6,2015).

En complément:

>7 . Quelques bonnes habitudes en PHP

< 5 . Variables PHP sous forme de tableau

Modification:23/03/2012, mise à jour PHP5.3.0 avec EREG