检查php中位字段是否打开的正确方法是什么
检查位字段是否打开的正确方法是什么 - (在 php 中)?
我想检查来自 db(mysql) 的位字段是否打开。
这是正确的方法吗?
if($bit & 1)
还有其他方法吗?
我看到有人使用 ord() 函数编写代码,这是正确的吗?
就像if(ord($bit) == 1)
What is the correct way to check if bit field is turn on - (in php) ?
I want to check a bit field that come from db(mysql) if is turn on or not.
is this is the correct way ?
if($bit & 1)
Are there other ways ?
I see somebody code that using ord() function , it is correct ?
like if(ord($bit) == 1)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
使用
其中
$n
是第 n 位来获得减一(例如,$n=0
以获得最低有效位)Use
Where
$n
is the n-th bit to get minus one (for instance,$n=0
to get the least significant bit)我用
I use
虽然有点晚了,但对于未来访问这个问题的人来说可能会有用。我为自己创建了一个小函数,它返回某个标志中所有活动的位。
It's a bit late but might be usefull for future visitors to this question. I've made myself a little function that returns all bits that are active in a certain flag.
是的,根据PHP 手册。
另一种方法是在 MySQL 查询中进行检查。
Yes,
if($bit & 1)
is the correct way to check, according to the PHP manual.An alternative could be to do the check in your MySQL query.
要获取正确的位,请使用以下语法:
其中
$n
是获取第 (n+1) 个最低有效位。因此$n=0
将为您提供第一个最低有效位。To get the correct bit, use this syntax:
Where
$n
is to get the (n+1)-th least significant bit. So$n=0
will get you the first least significant bit.