Я использую Zend-DB в сочетании с Zend-Expressive. У меня есть обработчик, который выбирает все записи из таблицы базы данных и возвращает результаты в виде ответа JSON:
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());
}
Что меня немного раздражает, так это то, что ответ выглядит так:
[{"id":"1","name":"tester"}]
Поле "id" имеет тип INTEGER в моей таблице (MySQL), и поэтому я ожидал:
[{"id": 1, "name": "tester"}]
Есть ли способ автоматического приведения типа?