为什么PHP的MySQL驱动程序没有转换数据类型?

时间:2010-08-05 13:24:24

标签: php mysql types

我已经思考了很长时间,但我从来没有听过任何解释。

我猜测MySQL的C API根本不是为了交换原始类型的数据而设计的(这听起来像是一个设计缺陷),或者原始的mysql驱动程序(由mysqli驱动程序取代)设计得很糟糕, mysqli驱动程序试图向后兼容。

我理解PostgreSQL在PHP中强制转换类型..为什么不是MySQL?在其他语言和RDBMS中通常的做法是将所有值作为字符串返回吗?

2 个答案:

答案 0 :(得分:2)

mysql已经过时了。 mysqli更好('我代表'改进'当然),PDO超越所有,并且至少知道bin / int / char差异。

答案 1 :(得分:1)

我认为最初的MySQL驱动程序是在2000/2001年左右编写的(可能更早?)。 PHP数据对象(PDO)类直到2004年才编写 - 但是这会向您展示PHP在很短的时间内已经覆盖了多少。

当它起源(PHP)时,它根本没有经过深思熟虑或计划好,但从那以后它们就一直在整理它们。

那个以及PHP不是strongly typed programming language的事实可能解释了为什么......