【发布时间】:2010-10-19 23:22:18
【问题描述】:
经过数小时的调试,我发现我的一个脚本中有一个错误。为了在数据库中保存不同的事件类型,我为每个事件提供了一组唯一数据,可用于识别事件。
所以我基本上有一些类似的代码
$key = md5(json_encode($data));
为每个事件生成一个唯一的密钥。
现在,在某些情况下,$data 数组中的值是一个整数,有时是一个字符串(取决于它的来源——数据库或 URL)。这会导致 json_encode() 的输出彼此不同 - 一次包含引号,一次不包含。
有人知道“统一”$data 数组中的变量类型的方法吗?这可能意味着将所有仅包含整数值的字符串转换为整数。使用json_encode()时还有什么需要注意的吗?
【问题讨论】:
-
附带说明,我们数据库中的大多数事件(显然除了错误创建的事件之外)现在都基于字符串,因此最好将整数转换为字符串,而不是使用其他方式周围。
-
我在考虑建议,如果您只需要一致的哈希,但我不确定您将它用于什么......
-
是的,我需要一个一致的哈希,这就是它的意义所在。
标签: php variable-types