PHP 相当于 .NET/Java 的 toString()

2022-08-30 05:49:46

如何将 PHP 变量的值转换为字符串?

我正在寻找比用空字符串连接更好的东西:

$myText = $myVar . '';

就像Java或.NET中的方法一样。ToString()


答案 1

您可以使用转换运算符

$myText = (string)$myVar;

PHP 手册的字符串部分提供了有关字符串转换和转换的更多详细信息,包括布尔值和 null 的特殊处理。


答案 2

这是通过类型转换完成的:

$strvar = (string) $var; // Casts to string
echo $var; // Will cast to string implicitly
var_dump($var); // Will show the true type of the variable

在类中,您可以使用神奇的方法定义输出__toString。示例如下:

class Bottles {
    public function __toString()
    {
        return 'Ninety nine green bottles';
    }
}

$ex = new Bottles;
var_dump($ex, (string) $ex);
// Returns: instance of Bottles and "Ninety nine green bottles"

一些更多的类型转换示例:

$i = 1;

// int 1
var_dump((int) $i);

// bool true
var_dump((bool) $i);

// string "1"
var_dump((string) 1);

推荐