Affecter un type à une variable

PHP cours tutorial

La fonction settype()

(PHP 4, PHP 5)

La fonction settype()  affecte un type à une variable.

Syntaxe :

settype ( $$var ,  $type )

Force le type de la variable $var en $type c'est-à-dire affecte le type $type à la variable $var.

 

Le paramètre $var est la variable à convertir.

Le paramètre $type est le nouveau type à donner à la variable $var.

Les valeurs possibles pour le paramètre type sont :

  • "boolean" (ou, depuis PHP 4.2.0, "bool")
  • "integer" (ou, depuis PHP 4.2.0, "int")
  • "float" (uniquement depuis PHP 4.2.0. Pour les anciennes versions, utilisez l'alternative "double")
  • "string"
  • "array"
  • "object"
  • "NULL" (depuis PHP 4.2.0)

La fonction settype() retourne TRUE en cas de succès ou FALSE si une erreur survient.

Exemple :

<?php

$foo = "5bar"; // chaîne

$bar = true;   // booléen

settype($foo, "integer");

// on utilse la fonction gettype() pour voir le type

echo 'Le type de la varible $foo passe de string en <b>',gettype($foo),'</b><br />';

// on utilse la fonction gettype() pour voir le type

settype($bar, "string");

echo 'Le type de la varible $foo passe de integer en <b>',gettype($bar),'</b>';

?>

Ce qui affiche :

Le type de la varible $foo passe de string en integer
Le type de la varible $foo passe de integer en string

Et pour changer le type des valeurs dans un array (tableau) ?

Changer le type des valeurs dans un array.

Tout d’abord il faut que le tableau soit homogène c'est-à-dire que toutes les valeurs soient du même type.

Et pour affecter un autre type aux valeurs du tableau voici une fonction dont la syntaxe est la suivante :

$tableau =array_map(create_function('$val', 'return (type)$val;'),$tableau);

Dans le paramètre return (type)$val on indique le type à affecter aux différentes valeurs du tableau.

Les valeurs possibles pour le paramètre type sont :

  • Pour  "boolean"   : on indique (boolean) ou (bool)
  • Pour "integer"      : on indique (integer) ou (int)
  • Pour "float"          : on indique (float)
  • Pour "string"        : on indique (string)

Exemple :

<?php

/* Suposons qu'on a le tableau suivant qui a été généré par un autre script et

que nous voulons transformer ses valeurs de string en interger */

$tableau = array('3','25','94');

//Le tableau avant la transformation;

var_dump($tableau);

//Voici une fonction pour la transformation

$tableau =array_map(create_function('$val', 'return (int)$val;'),$tableau);

//Le tableau apres la transformation;

var_dump($tableau);

?>



Cours precedent:
cours precedent  La fonction serialize()

    Fonctions de manipulation des variables en PHP

 Cours suivant:
La fonction strval()   cours suivant

Par carabde 20 Aout 2014