Maison >développement back-end >tutoriel php >Explication détaillée des exemples de conversion de types de données PHP

Explication détaillée des exemples de conversion de types de données PHP

怪我咯
怪我咯original
2017-04-27 17:09:246634parcourir

PHP est un langage faiblement typé, car lorsque nous déclarons une variable, nous n'avons pas besoin de spécifier le type de données qu'elle stocke. Cependant, bien que PHP soit un langage faiblement typé, une conversion de type est encore parfois nécessaire.

Les types que PHP autorise pour la conversion sont les suivants :

转换操作符 转换类型 举例
boolean,bool 转换成布尔类型 (boolean)$num,(boolean)$str
string 转换成字符串 (string)$boo,(string)$flo
integer,int 转换成整形 (integer)$boo,(integer)$str
float,double 转换成浮点型 (float)$str
array 转换成数组 (array)$str
object 转换成对象 (object)$str

La conversion de types en PHP est très simple Il existe trois méthodes de conversion :

<.>Premier type :

Ajoutez simplement le nom du type entre parenthèses avant la variable à convertir, comme ceci :

<?php
$num1=3.14;
$num2=(int)$num1;
var_dump($num1);
echo "<br/>";
var_dump($num2);
?>
Résultat de l'exécution du code :

Explication détaillée des exemples de conversion de types de données PHP

Deuxième type :

Utilisez 3 types spécifiques de fonctions de conversion, intval(), floatval(), strval()

<?php
$a="123.9abc";
$int=intval($a); //转换后数值:123
var_dump($int);
echo "<br/>";
$float=floatval($a); //转换后数值:123.9
var_dump($float);
echo "<br/>";
$str=strval($float); //转换后字符串:"123.9"
var_dump($str);
?>
Résultat de l'exécution du code :

Explication détaillée des exemples de conversion de types de données PHP

Troisième type :

Utilisez la fonction settype(), qui peut convertir la variable spécifiée dans le type de données spécifié. La syntaxe est la suivante :

settype(mixed var,string type)
Le paramètre var est la variable spécifiée ; le type de paramètre est le type de données spécifié. Le paramètre type a 7 valeurs optionnelles, à savoir boolean, float, integer, array, null, object et string. Si la conversion réussit, la fonction setype() renvoie true, sinon elle renvoie false.

<?php
$num=12.8;
$flg=settype($num,"int");
var_dump($flg);  //输出bool(true)
echo "<br/>";
var_dump($num); //输出int(12)
?>
Le résultat de l'exécution du code :

Explication détaillée des exemples de conversion de types de données PHP

Lorsque la chaîne est convertie en un type entier ou à virgule flottante, si la chaîne est un nombre Au début, la partie numérique sera d'abord convertie en un entier, puis la chaîne suivante sera supprimée si le nombre contient un point décimal, la première décimale sera prise. Explication détaillée des exemples de conversion de types de données PHP

Exemple de conversion de type de données PHP

Cet exemple utilisera la première et la troisième méthodes pour convertir le type de chaîne spécifié et comparer les deux méthodes. Le code est le suivant :

<?php
header("content-type:text/html;charset=utf-8");        //设置编码
$num=&#39;3.1415926r*r&#39;;
echo &#39;使用(integer)操作符转换变量$num类型:&#39;;        //使用integer转换类型
echo (integer)$num .&#39;<br/>&#39;;
echo &#39;输出变量$num的值:&#39;.$num.&#39;<br/>&#39;;               //输出原始变量$num
echo &#39;使用settype函数转换变量$num类型:&#39;;
echo settype($num,&#39;integer&#39;).&#39;<br/>&#39;;                 //使用settype函数转换类型
echo &#39;输出变量$num的值:&#39;.$num;                       //输出原始变量$num
                       
?>
Le résultat de l'exécution du code :

Explication détaillée des exemples de conversion de types de données PHP

Comme vous pouvez le voir dans l'exemple ci-dessus, l'utilisation de l'opérateur entier peut Le type de variable est affiché directement sans aucune modification de la variable d'origine. Au lieu de cela, la fonction settype() renvoie 1, ce qui est vrai, et la variable d'origine est modifiée. Dans les applications pratiques, vous pouvez choisir la méthode de conversion en fonction de vos propres besoins.

Dans la section suivante, nous expliquerons "

Comment détecter le type de données".

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Que sont les cookies en php ?Article suivant:Que sont les cookies en php ?