如何用php判断一个二进制数中,哪些位是0 而 哪些是1?

查看:596
本文介绍了如何用php判断一个二进制数中,哪些位是0 而 哪些是1?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

已知一个二进制数(数位可能有600位左右),例如
$a= 100010010;
需要通过php判断出(从右往左)的 第0 第2 第3 第5 第6 第7位是0
从而得到
$ar0=array(0,2,3,5,6,7);
$ar1=array(1,4,8);

应该如何实现呢?

解决方案

$binary = ".....";
$binary = str_split($binary);

// 0
$a0 = array_keys(array_filter($binary, function ($bit) {
    return !$bit;
}));

// 1
$a1 = array_keys(array_filter($binary));

这篇关于如何用php判断一个二进制数中,哪些位是0 而 哪些是1?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆