settype()转换为bool而不是string

时间:2010-11-06 06:49:35

标签: php

在PHP中,如下所示的settype()函数应该将$ myvar的类型更改为字符串,但是当我运行它时,它显示为 boolean 。但是如果我将$myvar更改为$my_var settype,则将type更改为string。为什么会这样?

<?php
$myvar=1995;
echo "The variable is an ".gettype($myvar)."<br>";
$myvar=settype($myvar, "string");
echo "The variable is now a ".gettype($myvar);
?>

谢谢&amp; Regads, rseni。

1 个答案:

答案 0 :(得分:6)

根据settype的文档,它会更改通过引用传递的变量,返回一个bool

因此$myvar=settype($myvar, "string");首先将$myvar更改为字符串,然后分配返回的bool。正确的版本是:

settype($myvar, "string");