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

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

$myText = $myVar . '';

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


当前回答

对于基本类型,只需使用(string)$var或直接打印此变量。PHP是动态类型的语言,变量会动态地转换为字符串。

如果你想将对象转换为字符串,你需要定义返回字符串的__toString()方法。禁止此方法抛出异常。

其他回答

$parent_category_name = "new clothes & shoes";

// To make it to string option one
$parent_category = strval($parent_category_name);

// Or make it a string by concatenating it with 'new clothes & shoes'
// It is useful for database queries
$parent_category = "'" . strval($parent_category_name) . "'";

你可以使用类型转换:

$var = (string)$varname;

或StringValue:

$var = strval($varname);

或SetType:

$success = settype($varname, 'string');
// $varname itself becomes a string

它们在类型杂耍方面的作用都是一样的。

我使用variableToString。它可以处理所有PHP类型,并且非常灵活(如果需要,可以扩展它)。

对于基本类型,只需使用(string)$var或直接打印此变量。PHP是动态类型的语言,变量会动态地转换为字符串。

如果你想将对象转换为字符串,你需要定义返回字符串的__toString()方法。禁止此方法抛出异常。

另一个选择是使用内置的settype函数:

<?php
$foo = "5bar"; // string
$bar = true;   // boolean

settype($foo, "integer"); // $foo is now 5   (integer)
settype($bar, "string");  // $bar is now "1" (string)
?>

与类型转换不同,这实际上是对变量执行转换,并允许您有一种转换为多种类型的通用方法。