PDO getColumnMeta没有JSON的本机类型

时间:2017-11-20 13:52:53

标签: php mysql json pdo

使用PDO调用getColumnMeta函数时,对于具有JSON数据类型的字段,它不返回native_type字段。有没有办法让它返回JSON本机类型?它会返回任何其他数据类型的类型,例如stringintfloat

我使用标准的PDO驱动程序和MySQL 5.7运行PHP7

1 个答案:

答案 0 :(得分:-2)

不,没有。

getColumnMeta() 仍然是一个实验性功能。实际的规范从未设计过,唯一可用的实现是实验的结果。你得到的值没有多大意义,因为对于它们应该意味着什么没有达成共识。

JSON 是 MySQL 中新增的一种类型,是实验后添加的。该类型不存在于代码中,如果需要,有人必须添加它,但问题是它实际上应该代表什么。您在 PHP 中从 JSON 列类型接收的数据以字符串形式出现。 PHP 没有原生 JSON 类型,而是将 JSON 数据表示为字符串。您可以将其解码为数组或对象,但这是应用程序的作用。