php如何将变量转为字符串

(*-*)浩
(*-*)浩 原创
2023-02-25 17:20:01 7969浏览

PHP 在变量定义中不需要(或不支持)明确的类型定义;变量类型是根据使用该变量的上下文所决定的。

php可以使用(String)将变量强转为字符串,一个字符串 string 就是由一系列的字符组成,其中每个字符等同于一个字节。(推荐学习:PHP视频教程

/**
 * 将一个变量转为字符串
 *  float使用var_export得到的字符串不准确
 *  resource使用var_export得到的是null
 * @param $variable
 * @return string
 */
function variable_to_string($variable)
{
    return is_float($variable)
        ?
        (string)$variable
        :
        (
            is_resource($variable)
            ?
            "'resource of type'"
            :
            var_export($variable, true)
        );
}

// int
$a = 4;
var_dump(variable_to_string($a));
/**
 * 输出:string(1) "4"
 */

// float
$a = 100.4;
var_dump(variable_to_string($a));
/**
 * 输出:string(5) "100.4"
 */

// string
$a = 'abcdefg';
var_dump(variable_to_string($a));
/**
 * 输出:string(9) "'abcdefg'"
 */

// array
$a = ['a' => 'a', 'b' => 'b'];
var_dump(variable_to_string($a));
/**
 * 输出:string(37) "array (
 *  'a' => 'a',
 *  'b' => 'b',
 * )"
 */

// object
$a = new stdClass();
$a->a = 'a';
$a->b = 'b';
var_dump(variable_to_string($a));
/**
 * 输出:string(61) "stdClass::__set_state(array(
 *  'a' => 'a',
 *  'b' => 'b',
 * ))"
 */

// bool
$a = false;
var_dump(variable_to_string($a));
/**
 * 输出:string(5) "false"
 */

// null
$a = null;
var_dump(variable_to_string($a));
/**
 * 输出:string(4) "NULL"
 */

// resource
$a = fopen('./test.log', 'wb+');
var_dump(variable_to_string($a));
/**
 * 输出:string(18) "'resource of type'"
 */

以上就是php如何将变量转为字符串的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。