php - PHP 从 Postgres 正确读取数据类型

标签 php string postgresql types integer

如何用 PHP 在 Postgres 中编译整数数据?

我的整数是字符串,如下所示 var_dump ( $_SESSION )

  'logged_in' => int 1
  'user_id' => string '9' (length=1)                 // should be int
  'a_moderator' => string '0' (length=1)             // should be int

我通过以下代码编译值,这显然是 pg_preparepg_execute 之后的问题根源。

    while ( $row = pg_fetch_array( $result ) ) { 
        $user_id = $row['user_id'];
    }   

最佳答案

PHP 数据库扩展将所有数据类型返回为字符串是很正常的,因为某些 SQL 数据类型无法用 PHP 原生数据类型表示。

示例:PostgreSQL BIGINT(8 字节整数数据类型)将溢出 int PHP 类型(除非 PHP 编译时支持 64 位),并被强制转换作为 float 可能会失去准确性。

关于php - PHP 从 Postgres 正确读取数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1314986/

相关文章:

.net - 无法从 .NET 应用程序连接到 Heroku Postgres (Npgsql)

ruby-on-rails - 外键没有按预期工作

php - PDO异常 : Can't open lib 'ODBC Driver 13 for SQL Server'

c# - REGEX 删除被 < pikes > 包围的字符串

php - 从摘录中删除短代码(有代码)

Python向字符串中添加字符

c - 如何在 C 中将任何数据类型转换为字符串(不知道它的类型)

sql - 在 PostgreSQL 中执行多个平均查询

php数组将一个数组的值添加到另一个数组

php - 无法访问 MySQL 数据库