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

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

$myText = $myVar . '';

类似于Java或。net中的ToString()方法。


当前回答

使用print_r:

$myText = print_r($myVar,true);

你也可以这样使用它:

$myText = print_r($myVar,true)."foo bar";

这将把$myText设置为一个字符串,就像:

array (
  0 => '11',
)foo bar

使用var_export来获得更多信息(变量类型,…):

$myText = var_export($myVar,true);

其他回答

你可以使用强制转换操作符:

$myText = (string)$myVar;

PHP手册的字符串部分有关于字符串强制转换的更多细节,包括对布尔值和空值的特殊处理。

您总是可以创建一个名为.ToString($in)的方法来返回

$in . '';  

我认为值得一提的是,你可以通过使用输出缓冲来捕获变量中的任何输出(如print_r, var_dump):

<?php
    ob_start();
    var_dump($someVar);
    $result = ob_get_clean();
?>

感谢: 如何将var_dump的结果捕获到字符串?

双引号也可以……它应该创建一个字符串,然后它应该在两个空字符串之间APPEND/INSERT转换后的字符串值$myVar。

文档说你还可以这样做:

$str = "$foo";

和演员一样,但是我觉得看起来更漂亮。

来源:

俄罗斯 英语