Maison > Article > développement back-end > Comment forcer la conversion en chaîne en php
Comment forcer la conversion en chaîne en PHP : Créez d'abord un exemple de fichier PHP ; puis définissez une variable ; et enfin forcez la conversion en chaîne via la méthode de chaîne en PHP.
L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur DELL G3
Type de conversion forcée PHP
Obtenir le type de données :
1 Si vous souhaitez vérifier la valeur et le type d'une expression, utilisez var_dump().
2. Si vous souhaitez simplement obtenir une expression de type facile à comprendre pour le débogage, utilisez gettype().
3. Pour afficher un certain type, n'utilisez pas gettype(), mais utilisez la fonction is_type().
Convertir une chaîne en valeur numérique
Remarque : Ne vous attendez pas à obtenir l'encodage d'un caractère lorsque vous le convertissez en entier (vous le faites probablement aussi en C). Si vous souhaitez effectuer une conversion entre les encodages de caractères et les caractères, utilisez les fonctions ord() et chr().
Le casting de type forcé
Le casting de type en PHP est très similaire à celui en C : dans la variable à convertir Précédé par le type de cible entre parenthèses.
Les conversions autorisées sont :
Notez que les espaces et les tabulations sont autorisés entre parenthèses
Vous pouvez également utiliser settype (mixed var, type de chaîne) est forcé à convertir.
1. Conversion forcée en valeur booléenne (bool)|(boolean)
Pour convertir explicitement une valeur en booléen, utilisez (bool ) ou (boolean) pour forcer la conversion. Mais dans de nombreux cas, la conversion n'est pas nécessaire car lorsqu'un opérateur, une fonction ou un contrôle de flux nécessite un paramètre booléen, la valeur est automatiquement convertie.
Lorsqu'elles sont converties en booléen, les valeurs suivantes sont considérées comme FAUX :
Valeur booléenne FAUX
Valeur entière 0 (zéro)
Valeur flottante 0,0 (zéro)
Chaîne vide et chaîne "0 "
Tableau sans variables membres
Objet sans cellules (uniquement pour PHP 4)
Type spécial NULL (y compris les variables qui n'ont pas été définies)
Toutes les autres valeurs sont considérées comme VRAI (y compris toutes ressources).
<?php var_dump((bool) ""); // bool(false) var_dump((bool) 1); // bool(true) var_dump((bool) -2); // bool(true) var_dump((bool) "foo"); // bool(true) var_dump((bool) 2.3e5); // bool(true) var_dump((bool) array(12)); // bool(true) var_dump((bool) array()); // bool(false) var_dump((bool) "false"); // bool(true) ?>
2. Convertir en entier (int)|(integer)
Pour convertir explicitement une valeur en entier, utilisez la conversion (int) ou (integer). Cependant, dans la plupart des cas, la conversion n'est pas nécessaire car lorsqu'un opérateur, une fonction ou un contrôle de flux nécessite un paramètre entier, la valeur est automatiquement convertie. Vous pouvez également utiliser la fonction intval() pour convertir une valeur en type entier.
a. Convertir à partir de bool
b. Convertir à partir d'un nombre à virgule flottante, arrondi, hors plage, le résultat est incertain
c Convertir à partir d'une chaîne, voir Convertir une chaîne en valeur numérique
d. à partir d'autres types, remplacez d'abord par une valeur booléenne, puis convertissez
Ne convertissez jamais une fraction inconnue en un entier, car cela peut parfois conduire à des résultats inattendus.
<?php echo (int) ( (0.1+0.7) * 10 ); // 显示 7 ?> $str = "123.456abc7"; // (int)123 echo (int)$str; $str = "abc123.456"; // (int)0 $str = true; // (int)1 $str = false; // (int)0
3.强制转换为浮点型 (int)|(double)|(real)|doubleval()|floatval()|intval()
精度: 0.12345678901234 // double,real都一样
数据的丢失参 字符串转换为数值
【推荐学习:《PHP视频教程》】
4.强制换为字符串 (string) |strval()
可以用 (string) 标记或者 strval() 函数将一个值转换为字符串。当某表达式需要字符串时,字符串的转换会在表达式范围内自动完成。例如当使用 echo() 或者 print() 函数时,或者将一个变量值与一个字符串进行比较的时候。
正如以上所示,将数组、对象或者资源打印出来,并不能提供任何关于这些值本身的有用的信息。请参阅函数 print_r() 和 var_dump(),对于调试来说,这些是更好的打印值的方法。
可以将 PHP 的值转换为字符串以永久地储存它们。这种方法被称为序列化,可以用函数 serialize() 来完成该操作。如果在安装 PHP 时建立了 WDDX 支持,还可以将 PHP 的值序列化为 XML 结构。
4. 强制转换为数组 (array)
<span style="font-family: NSimsun">NULL</span>
值转换成数组,将得到一个空数组。 5. 转换为对象 (object)
如果将一个对象转换成对象,它将不会有任何变化。如果其它任何类型的值被转换成对象,内置类 stdClass 的一个实例将被建立。如果该值为 NULL,则新的实例为空。数组转换成对象将使键名成为属性名并具有相对应的值。对于任何其它的值,名为 scalar 的成员变量将包含该值
6. 转换为资源 (无法转换)
由于资源类型变量保存有为打开文件、数据库连接、图形画布区域等的特殊句柄,因此无法将其它类型的值转换为资源。
■PHP 类型比较表
以下的表格显示了 PHP 类型和比较运算符在松散和严格比较时的作用。该补充材料还和类型戏法的相关章节内容有关。
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!