【发布时间】:2016-06-25 08:38:37
【问题描述】:
我正在使用 codeigniter,当从 MySQL DB 中选择一个整数时,我得到一个字符串,比如“1”,我希望它返回 1。
以下是使用 PDO 解决此问题的方法: How to get numeric types from MySQL using PDO?
我不知道如何将它应用到我的情况,使用 Codeigniter 3 和 PHP 7(它使用 mysqli 驱动程序)
PHP 类型转换对我来说太慢了,这是一篇关于它的帖子(所以请不要建议这样做):PHP - Recursive in place replacing of strings to numbers takes too long
【问题讨论】:
-
你如何使用这个整数?为什么类型转换太慢了?
-
@Qirel 我正在使用 json_enocde 回复这些数据。为什么慢?在 200MB 上,需要这么长的时间,查询和下载大约需要 5 秒。 (这么长,30秒后不会停止)
-
intval()php.net/manual/en/function.intval.php,类型转换很慢?奔腾2 CPU?我有每秒运行 50k 个查询的生产服务器,我怀疑强制转换会对性能产生很大影响。 -
@ArtisiticPhoenix 这是一个与我所拥有的数据相比的小数据测试:sandbox.onlinephpfunctions.com/code/…,顺便说一句,intval 比 (int) 慢,比 0+"1" 慢
-
@Amit - 所以你计划用这个函数做 320k 次迭代。即使这样,它也是十分之二秒,远低于网络流量所需的时间。
标签: php mysql codeigniter mysqli