加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – MySQL select b’1’根据环境返回整数1或ASCII字符1

发布时间:2020-12-13 13:20:22 所属栏目:PHP教程 来源:网络整理
导读:在我的家用电脑上 mysql_fetch_row(mysql_query(“select b’1’”))[0] 返回字符串“1”. 但是当在webserver上托管时,它返回具有ASCII字符1的字符串. Doc确实说 – Bit values are returned as binary values. To display them in printable form,add 0 or
在我的家用电脑上

mysql_fetch_row(mysql_query(“select b’1’”))[0]

返回字符串“1”.

但是当在webserver上托管时,它返回具有ASCII字符1的字符串.

Doc确实说 –

Bit values are returned as binary values. To display them in printable
form,add 0 or use a conversion function such as BIN().

但是在我的本地机器上,它仍然返回“1”,而我没有做任何转换.

如何在我的Web服务器上具有相同的行为?

如果我得到相同的行为,那么我不必转换我的PHP代码

$row = mysql_fetch_row( mysql_query(" select bit1_field from .. where .. ") );
if( $row[0] === '1' ) ...;

... select bit1_field+0 as bit1_field ...

其中bit1_field的类型为bit(1).

您似乎在机器上使用两个不同的驱动程序.有两个,php5-mysqlnd和php5-mysql. Website Factor写了关于4月下旬BIT字段的不同行为,我也有几台机器具有相同版本,但驱动器不同.我可能是因为从早期版本升级时没有更改驱动程序,但是当安装了php> 5.4时,它默认安装了php5-mysqlnd.这是 MySQL page about the differences.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读