本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑
在PHP中,实现数据类型转换的函数有多种:intval()、floatval()、boolval()、strval()、settype()。
但intval()、floatval()、boolval()、strval()函数强制类型转换的方式都不会改变被转换变量本身的类型,而是通过将转换得到的新类型的数据赋值给新的变量,原变量的类型和值不变。这样是无法进行永久转换的。
而settype()可以永久改变变量本身的数据类型,语法:
settype ($var,$type)
会将变量 $var
的类型设置成 $type
。
$type
的可能值为:
"boolean" (或为"bool",从 PHP 4.2.0 起)
"integer" (或为"int",从 PHP 4.2.0 起)
"float" (只在 PHP 4.2.0 之后可以使用,对于旧版本中使用的"double"现已停用)
"string"
"array"
"object"
"null" (从 PHP 4.2.0 起)
示例:
<?php
$foo = "5bar"; // string
$bar = true; // boolean
var_dump($foo);
var_dump($bar);
settype($foo, "integer"); // $foo 现在是 5 (integer)
settype($bar, "string"); // $bar 现在是 "1" (string)
var_dump($foo);
var_dump($bar);
?>