在 PHP 中,floatval() 函数用于将变量转换为浮点数
floatval() 函数将字符串转换为浮点数时,它会从字符串的起始位置开始解析,直到遇到一个无法识别为数值的字符。例如:$str1 = "123.45abc"; $str2 = "abc123.45"; echo floatval($str1); // 输出 123.45 echo floatval($str2); // 输出 0,因为字符串以非数值字符开头 floatval() 可以将布尔值 true 和 false 分别转换为浮点数 1.0 和 0.0。$bool1 = true; $bool2 = false; echo floatval($bool1); // 输出 1.0 echo floatval($bool2); // 输出 0.0 floatval() 函数可以将整数和浮点数原样返回,不会产生任何改变。$int = 42; $float = 3.14; echo floatval($int); // 输出 42.0 echo floatval($float); // 输出 3.14 floatval() 函数会产生一个警告,并返回 0.0。$array = [1, 2, 3]; $obj = new stdClass(); echo floatval($array); // 输出 0.0,并产生警告 echo floatval($obj); // 输出 0.0,并产生警告 null 或未定义变量转换为浮点数时,floatval() 函数会返回 0.0。$null = null; echo floatval($null); // 输出 0.0 echo floatval($undefined_var); // 输出 0.0,并产生警告(如果启用了错误报告) 总之,floatval() 函数在处理不同类型的变量时,会根据上述规则进行转换。需要注意的是,在处理数组、对象和未定义变量时,可能会产生警告。为了避免这些问题,建议在使用 floatval() 函数之前先检查变量的类型。