| auteur : Cyberzoide | La fonction gettype($var) retourne une chaîne de caractères contenant le nom du type de la variable $var.
Ce type peut être entier (integer), flottant (double), tableau (array), objet (object), booléen (boolean), chaîne de caractères (string), fonction définie par l'utilisateur (user function), ressource (ressource) ou inconnu (unknown type). if(gettype(12.5) == 'double') {
echo "c'est un flottant";
} |
Il existe aussi tout un lot d'autres fonctions qui testent si une variable est d'un type donné, en retournant TRUE ou FALSE :
|
lien : Comment vérifier le type d'une chaîne ?
|
| auteur : Kerod |
De manière générale, on utilise la fonction
isset()
car elle permet de déterminer l'existence d'une variable.
En effet, elle renvoie TRUE si la variable est définie,
FALSE sinon.
Exemples d'utilisation : Code avec un test à FALSE | if(isset($var))
{
echo 'La variable existe et a pour valeur : ' . $var;
} |
La variable $var n'étant pas définie dans notre portion de code,
notre test renverra FALSE et par conséquent rien ne sera affiché.
Code avec un test à TRUE | $var = "Test";
if(isset($var))
{
echo 'La variable existe et a pour valeur : ' . $var;
} |
Ce code affichera que la variable existe, car elle a été définie plus haut.
Cette fonction peut aussi être utilisée pour effectuer des
tests sur toutes autres structures de données comme les tableaux,
les éléments de formulaires, etc.
Notez aussi que le caractère nul ("\0") n'est pas équivalent à
la constante NULL.
Attention : La fonction isset() fonctionne
uniquement avec des variables car l'utilisation de toute autre
chose aura comme conséquence une erreur d'analyse.
|
lien : Comment tester l'existence d'une constante ?
|
| auteur : Kerod |
On peut être amené à tester le contenu d'une variable, que
ce soit une chaîne de caractères, un tableau, un numérique, etc.
Pour ce faire, il existe la fonction
empty()
qui détermine si une variable contient une valeur non nulle et
retourne FALSE si la variable a une valeur non vide et
différente de zéro.
Exemples d'utilisation avec empty() | $var;
if(empty($var))
{
echo "TRUE";
}
$var = "";
if(empty($var))
{
echo "TRUE";
}
$var = "0";
if(empty($var))
{
echo "TRUE";
}
$var = NULL;
if(empty($var))
{
echo "TRUE";
}
$var = array();
if(empty($var))
{
echo "TRUE";
}
$var = TRUE;
if(empty($var))
{
echo "FALSE";
}
$var = 1;
if(empty($var))
{
echo "FALSE";
} |
|
| auteurs : Eusebius, Jérôme | Vous avez écrit ce qui suit et l'affichage n'est pas celui attendu $variable = 'valeur' ;
echo 'chaine $variable'; |
Vous attendiez chaine valeur. L'explication est très simple : les variables ne sont pas interprétées dans les chaines entre simple quotes.
Vous avez donc trois solutions : 1) La concaténation $variable = 'valeur' ;
echo 'chaine ' . $variable; |
2) Utiliser des doubles quotes (guillemets). Les variables sont interprétées dans les chaînes entre double quotes, mais ce n'est pas recommandé d'un point de vue performances. Si l'on utilise quand même des variables dans des chaînes entre double quotes, les entrées de tableaux doivent être entourés d'accolades et il n'est pas possible d'utiliser les membres d'objets ($obj->machin). $variable = 'valeur' ;
echo "chaine $variable" ;
$tableau['cle'] = 'valeur2';
echo "test {$tableau['cle']}" ; |
3) La troisième solution est l'utilisation de la syntaxe HereDoc$variable = 'valeur' ;
echo <<<identifiant
chaine $variable
identifiant; |
|
| auteur : Julp | Une variable statique est uniquement utilisée dans le corps des fonctions. Elle n'est pas accessible à l'extérieur de la fonction où elle est déclarée. Static nous vient du C et signifie que la valeur de la variable conserve après les appels de la fonction sa valeur puisque l'emplacement mémoire alloué à cette variable est constant. Ce qui n'est pas le cas en temps normal avec les variables puisqu'elles sont détruites à la fin de l'exécution de la fonction (soit lorsque la fin du bloc de la fonction a été atteint, soit lorsque return est rencontré).
Exemple :
function compteur() {
static $compteur = 0;
$compteur++ ;
echo "Nombre d'appels à la fonction : " . $compteur;
} |
|
Consultez les autres F.A.Q's
Les sources présentés sur cette pages sont libre de droits,
et vous pouvez les utiliser à votre convenance. Par contre cette page de présentation de ces sources constitue une oeuvre intellectuelle protégée par les droits d'auteurs.
Copyright ©2003
Developpez LLC. Tout droits réservés Developpez LLC.
Aucune reproduction, même partielle, ne peut être faite de ce site et de
l'ensemble de son contenu : textes, documents et images sans l'autorisation
expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans
de prison et jusqu'à 300 000 E de dommages et intérets.
Cette page est déposée à la SACD.
|