<bdo id='EcGhz'></bdo><ul id='EcGhz'></ul>

<i id='EcGhz'><tr id='EcGhz'><dt id='EcGhz'><q id='EcGhz'><span id='EcGhz'><b id='EcGhz'><form id='EcGhz'><ins id='EcGhz'></ins><ul id='EcGhz'></ul><sub id='EcGhz'></sub></form><legend id='EcGhz'></legend><bdo id='EcGhz'><pre id='EcGhz'><center id='EcGhz'></center></pre></bdo></b><th id='EcGhz'></th></span></q></dt></tr></i><div id='EcGhz'><tfoot id='EcGhz'></tfoot><dl id='EcGhz'><fieldset id='EcGhz'></fieldset></dl></div>
    <tfoot id='EcGhz'></tfoot>

    1. <small id='EcGhz'></small><noframes id='EcGhz'>

      <legend id='EcGhz'><style id='EcGhz'><dir id='EcGhz'><q id='EcGhz'></q></dir></style></legend>
      1. 为什么 PDO_MySQL 不返回整数?

        时间:2023-10-04
          <tbody id='i9c4f'></tbody>
        <i id='i9c4f'><tr id='i9c4f'><dt id='i9c4f'><q id='i9c4f'><span id='i9c4f'><b id='i9c4f'><form id='i9c4f'><ins id='i9c4f'></ins><ul id='i9c4f'></ul><sub id='i9c4f'></sub></form><legend id='i9c4f'></legend><bdo id='i9c4f'><pre id='i9c4f'><center id='i9c4f'></center></pre></bdo></b><th id='i9c4f'></th></span></q></dt></tr></i><div id='i9c4f'><tfoot id='i9c4f'></tfoot><dl id='i9c4f'><fieldset id='i9c4f'></fieldset></dl></div>
          • <small id='i9c4f'></small><noframes id='i9c4f'>

              <bdo id='i9c4f'></bdo><ul id='i9c4f'></ul>

              <legend id='i9c4f'><style id='i9c4f'><dir id='i9c4f'><q id='i9c4f'></q></dir></style></legend>

                  <tfoot id='i9c4f'></tfoot>
                1. 本文介绍了为什么 PDO_MySQL 不返回整数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                  问题描述

                  我正在将我的 PHP 代码从 mysql(在 5.5 中弃用)迁移到 PDO_MySQL.但是,mysql_fetch_row 返回整数,而 PDOStatement::fetch 返回数字字符串.我怎样才能让 PDO 表现得像前者一样?

                  I'm migrating my PHP codes from mysql (deprecated in 5.5) to PDO_MySQL. However, mysql_fetch_row returns integer while PDOStatement::fetch returns strings for numbers. How can I make PDO behaves like the former one?

                  mysql_fetch_row 的结果:

                  array(1) {
                    ["id"]=>
                    int(1)
                  }
                  

                  PDOStatement::fetch 的结果:

                  array(1) {
                    ["id"]=>
                    string(1) "1"
                  }
                  

                  推荐答案

                  PDO::ATTR_EMULATE_PREPARES 设置为 false,如果您确实需要使用松散类型的 PHP

                  Set PDO::ATTR_EMULATE_PREPARES to false, if you really need it with loosely-typed PHP

                  如果 mysql_fetch_row 为 SUM 返回 int 或者(我从不关心检查) - 那么它会做一些魔术,比如 if (ctype_digit($val)) $row[$key] =(int)$val; - 所以你可以在你的 DBAL 中做

                  If mysql_fetch_row returns you int for SUM either (I never cared to check) - then it does some magic like if (ctype_digit($val)) $row[$key] = (int)$val; - so you can do in your DBAL

                  据我了解准备语句的工作方式,它使用相同的数据包结构来发送和检索数据,并且该数据包包含数据类型.

                  As far as I understand the way prepared statements works, it uses the same packet structure for either sending and retrieving data, and this packet contains data type.

                  看起来那个服务器可以返回两种格式的数据——native 和 mysqlnd,这取决于请求类型.后一个可以被客户端库解释为转换结果值.

                  It looks like that server can return data in 2 formats - native and mysqlnd, depends on the request type. A latter one can be interpreted by client library to cast resulting value.

                  这篇关于为什么 PDO_MySQL 不返回整数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                  上一篇:使用插入 PDO MySQL 获取插入 ID 下一篇:Laravel 到 SQL Server (sqlsrv).[PDOException] 找不到驱动程

                  相关文章

                  最新文章

                  <legend id='qdjSi'><style id='qdjSi'><dir id='qdjSi'><q id='qdjSi'></q></dir></style></legend>
                  <i id='qdjSi'><tr id='qdjSi'><dt id='qdjSi'><q id='qdjSi'><span id='qdjSi'><b id='qdjSi'><form id='qdjSi'><ins id='qdjSi'></ins><ul id='qdjSi'></ul><sub id='qdjSi'></sub></form><legend id='qdjSi'></legend><bdo id='qdjSi'><pre id='qdjSi'><center id='qdjSi'></center></pre></bdo></b><th id='qdjSi'></th></span></q></dt></tr></i><div id='qdjSi'><tfoot id='qdjSi'></tfoot><dl id='qdjSi'><fieldset id='qdjSi'></fieldset></dl></div>

                  <tfoot id='qdjSi'></tfoot>
                    • <bdo id='qdjSi'></bdo><ul id='qdjSi'></ul>
                  1. <small id='qdjSi'></small><noframes id='qdjSi'>