php根据各种类型变量生成唯一标识符

作者:Liaodeity - 2015-07-31

根据类型变量生成标识号,这个可以用法生成对变量的唯一识别号,比如缓存缓存的标识key的一部分

函数

/**
 * 根据PHP各种类型变量生成唯一标识号
 * @param mixed $mix 变量
 * @return string
 * @author [建百站www.jianbaizhan.com]
 */
function to_guid_string($mix) {
    if (is_object($mix)) {
        return spl_object_hash($mix);
    } elseif (is_resource($mix)) {
        $mix = get_resource_type($mix) . strval($mix);
    } else {
        $mix = serialize($mix);
    }
    return md5($mix);
}

函数用法

可以得到各个不同类型不同变量,生成的标识符都是不一样的。

$str = 'string';
echo to_guid_string($str).'<br/>';
$str = array();
echo to_guid_string($str).'<br/>';
$str = 12;
echo to_guid_string($str).'<br/>';
$str = 1;
echo to_guid_string($str).'<br/>';