如何在没有双引号的情况下获取数据?
让我解释一下:我正在使用 PostgreSQL 数据库和 PHP PDO 来获取数据。
它返回的数据是:
[["1358991300","70175.47"],["1359077700","70437.59"]...]
但我需要的是:
[[1358991300,70175.47],[1359077700,70437.59]...]
基本上所有数据,没有双引号。
预先感谢您的任何帮助!
如何在没有双引号的情况下获取数据?
让我解释一下:我正在使用 PostgreSQL 数据库和 PHP PDO 来获取数据。
它返回的数据是:
[["1358991300","70175.47"],["1359077700","70437.59"]...]
但我需要的是:
[[1358991300,70175.47],[1359077700,70437.59]...]
基本上所有数据,没有双引号。
预先感谢您的任何帮助!
PostgresPDO 在 PHP 中返回字符串而不是预期的数据类型。
尝试通过以下方式转换类型:
$timestamp = intval($row[0]);
$energy = floatval($row[1]);
更新
PDO 通过 bindColumn 对类型转换的支持有限:
PDO + MySQL 总是返回字符串,但是 MsSQL 呢?
http://php.net/manual/en/pdostatement.bindcolumn.php
我不使用 Postgres,所以有人可以确认吗?
更新 2
由于您是 json_encoding,请尝试(PHP >= 5.3.3):
json_encode($result, JSON_NUMERIC_CHECK);
自动将数字字符串转换为数字。