CakePHP将所有数据值作为数据类型字符串返回


CakePHP returns all data values as data type string

当我在CakePHP中查找后立即执行var_dump时,所有字段值都被列为具有字符串的数据类型,尽管数据库中的字段是整数、浮点、布尔值或其他任何不是字符串的字段。应该是这样,还是我在CakePHP、配置或数据库驱动程序中做错了什么?我正在开发一个用CakePHP 1.3版编写的带有mysqli驱动程序的应用程序(mysql驱动程序的行为相同)。

预期

CakePHP只返回底层驱动程序返回的内容,因此它依赖于Db,但如果您观察到所有值都是字符串,那么是的,应该是这样。

例如,使用mysql驱动程序的结果总是以字符串形式返回:

<?php
mysql_connect("localhost", "user", "pass");
$resource = mysql_query("select * from cakephp.posts");
$myrow = mysql_fetch_row($resource);
var_dump($myrow);

结果:

array(5) {
  [0] => string(1) "1" # <- autoincrement int primary key value
  [1] => string(9) "The title"
  [2] => string(22) "This is the post body."
  [3] => string(19) "2013-08-01 07:34:57"
  [4] => string(19) "2013-08-01 07:34:57"
}