首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >zend-db中的自动类型转换

zend-db中的自动类型转换
EN

Stack Overflow用户
提问于 2019-11-09 10:45:52
回答 1查看 66关注 0票数 1

我将zend-db与zend-expressive结合使用。我有一个处理程序,它从数据库表中选择所有记录,并将结果作为JSON响应返回:

代码语言:javascript
复制
public function handle(ServerRequestInterface $request) : ResponseInterface {
    $select = new Select();
    $select->from('person');
    $select->columns([
        'id',
        'name',
    ]);

    $sql = new Sql($this->dbAdapter);
    $statement = $sql->prepareStatementForSqlObject($select);
    $result = $statement->execute();

    $resultSet = new ResultSet();
    $resultSet->initialize($result);

    return new JsonResponse($resultSet->toArray());
}

让我有点恼火的是,响应看起来像这样:

代码语言:javascript
复制
[{"id":"1","name":"tester"}]

字段"id“在我的表(MySQL)中是整型的,所以我期望:

{"id":1,"name":"tester"}

有没有自动类型转换的方法?

EN

回答 1

Stack Overflow用户

发布于 2020-04-03 05:33:15

这确实是可能的,但你必须做一些准备工作。zdend-db附带了HydratingResultSet类,在here中描述了该类。您可以交付一个prototype对象,该对象将被实例化为初始化结果集的效果。如果你在"setter“方法中正确地管理类型,然后如果你实现了一个\JsonSerializable接口,你就可以得到你想要的结果。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58775978

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档