php - 如何在 CakePHP 中检索整数列的整数值?

标签 php mysql cakephp cakephp-2.0

当我执行 findfetch 时,无论列的数据类型如何,返回的值数组都包含所有列的字符串表示形式。这意味着不是像这样返回整数列:

array( 'field1' => 1 )

他们最终变成了

array( 'field1' => '1' )

这是 CakePHP 的预期行为吗?我是不是配置有误?

我考虑过在我的模型的 afterfind 方法中编写一些代码以在适当的列上调用 intval,但这真的是最好的解决方案吗? CakePHP 是否有更好的方法来处理非字符串列?

最佳答案

您可以从模型属性 Model::_schema 中找出您的模型表中的字段类型。基于此,您可以在 Model::afterFind() 中为您的字段键入值。回调。

您也可以手动检查您希望成为整数的字段,但使用 _schema 可以让您自动完成。例如,您可以将此作为一种行为来执行,并将其附加到需要此功能的每个模型。

因此,只需遍历结果并检查您希望成为整数的字段并对其进行类型转换。

关于php - 如何在 CakePHP 中检索整数列的整数值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10133666/

相关文章:

php - 没有id的cakephp路由?

php - 防止 PHP Web 应用程序中的 JavaScript 注入(inject)

php - CakePHP 迁移数据库行

php - Phalcon 模型不接受变量

php - POST 多行的更新语句不更新

java - 建立与mysql数据库的连接(关于优化的问题)

mysql - 从另一个查询的结果中向查询添加列

php - 添加DebugKit后Cakephp 2.5.4错误

用于按类别 joomla k2 进行每个排序的 php

php - 如何在邮件中显示ACF的字段?