PHP函数篇详解十进制、二进制、八进制和十六进制转换函数说明


Posted in PHP onDecember 05, 2011

一,十进制(decimal system)转换函数说明
1,十进制转二进制 decbin() 函数,如下实例

echo decbin(12); //输出 1100
echo decbin(26); //输出 11010
decbin
(PHP 3, PHP 4, PHP 5)
decbin -- 十进制转换为二进制
说明
string decbin ( int number )
返回一字符串,包含有给定 number 参数的二进制表示。所能转换的最大数值为十进制的 4294967295,其结果为 32 个 1 的字符串。

2,十进制转八进制 decoct() 函数

echo decoct(15); //输出 17
echo decoct(264); //输出 410
decoct
(PHP 3, PHP 4, PHP 5)
decoct -- 十进制转换为八进制
说明
string decoct ( int number )
返回一字符串,包含有给定 number 参数的八进制表示。所能转换的最大数值为十进制的 4294967295,其结果为 "37777777777"。

3,十进制转十六进制 dechex() 函数

echo dechex(10); //输出 a
echo dechex(47); //输出 2f
dechex
(PHP 3, PHP 4, PHP 5)
dechex -- 十进制转换为十六进制
说明
string dechex ( int number )
返回一字符串,包含有给定 number 参数的十六进制表示。所能转换的最大数值为十进制的 4294967295,其结果为 "ffffffff"。

二,二进制(binary system)转换函数说明
1,二进制转十六制进 bin2hex() 函数

$binary = "11111001";
$hex = dechex(bindec($binary));
echo $hex;//输出f9
bin2hex
(PHP 3 >= 3.0.9, PHP 4, PHP 5)
bin2hex -- 将二进制数据转换成十六进制表示
说明
string bin2hex ( string str )
返回 ASCII 字符串,为参数 str 的十六进制表示。转换使用字节方式,高四位字节优先。

2,二进制转十制进 bindec() 函数

echo bindec('110011'); //输出 51
echo bindec('000110011'); //输出 51
echo bindec('111'); //输出 7
bindec
(PHP 3, PHP 4, PHP 5)
bindec -- 二进制转换为十进制
说明
number bindec ( string binary_string )
返回 binary_string 参数所表示的二进制数的十进制等价值。
bindec() 将一个二进制数转换成 integer。可转换的最大的数为 31 位 1 或者说十进制的 2147483647。PHP 4.1.0 开始,该函数可以处理大数值,这种情况下,它会返回 float 类型。

三,八进制(octal system)转换函数说明
八进制转十进制 octdec() 函数

echo octdec('77'); //输出 63
echo octdec(decoct(45)); //输出 45
octdec
(PHP 3, PHP 4, PHP 5)
octdec -- 八进制转换为十进制
说明
number octdec ( string octal_string )
返回 octal_string 参数所表示的八进制数的十进制等值。可转换的最大的数值为 17777777777 或十进制的 2147483647。PHP 4.1.0 开始,该函数可以处理大数字,这种情况下,它会返回 float 类型。

四,十六进制(hexadecimal)转换函数说明
十六进制转十进制 hexdec()函数

var_dump(hexdec("See"));
var_dump(hexdec("ee"));
// both print "int(238)"

var_dump(hexdec("that")); // print "int(10)"
var_dump(hexdec("a0")); // print "int(160)"
hexdec
(PHP 3, PHP 4, PHP 5)
hexdec -- 十六进制转换为十进制
说明
number hexdec ( string hex_string )
返回与 hex_string 参数所表示的十六进制数等值的的十进制数。hexdec() 将一个十六进制字符串转换为十进制数。所能转换的最大数值为 7fffffff,即十进制的 2147483647。PHP 4.1.0 开始,该函数可以处理大数字,这种情况下,它会返回 float 类型。
hexdec() 将遇到的所有非十六进制字符替换成 0。这样,所有左边的零都被忽略,但右边的零会计入值中。

五,任意进制转换 base_convert() 函数

$hexadecimal = 'A37334';
echo base_convert($hexadecimal, 16, 2);//输出 101000110111001100110100
base_convert
(PHP 3 >= 3.0.6, PHP 4, PHP 5)

base_convert -- 在任意进制之间转换数字
说明
string base_convert ( string number, int frombase, int tobase )
返回一字符串,包含 number 以 tobase 进制的表示。number 本身的进制由 frombase 指定。frombase 和 tobase 都只能在 2 和 36 之间(包括 2 和 36)。高于十进制的数字用字母 a-z 表示,例如 a 表示 10,b 表示 11 以及 z 表示 35。

这里主要是把PHP进制转换函数进行整理,便于开发查找,相关具体函数说明请参考PHP手册。请关注下一期中文字符编码研究系列。

PHP 相关文章推荐
php&java(一)
Oct 09 PHP
在PHP中读取和写入WORD文档的代码
Apr 09 PHP
关于js与php互相传值的介绍
Jun 25 PHP
使用PHP破解防盗链图片的一个简单方法
Jun 07 PHP
ThinkPHP学习笔记(一)ThinkPHP部署
Jun 22 PHP
ThinkPHP中URL路径访问与模块控制器之间的关系
Aug 23 PHP
smarty内置函数config_load用法实例
Jan 22 PHP
php保存任意网络图片到服务器的方法
Apr 14 PHP
浅析ThinkPHP缓存之快速缓存(F方法)和动态缓存(S方法)(日常整理)
Oct 26 PHP
详解WordPress开发中get_header()获取头部函数的用法
Jan 08 PHP
PHP简单实现防止SQL注入的方法
Mar 13 PHP
php设计模式之适配器模式实例分析【星际争霸游戏案例】
Apr 07 PHP
PHP详解ASCII码对照表与字符转换
Dec 05 #PHP
Ajax实时验证用户名/邮箱等是否已经存在的代码打包
Dec 01 #PHP
PHP循环语句笔记(foreach,list)
Nov 29 #PHP
openPNE常用方法分享
Nov 29 #PHP
使用php+Ajax实现唯一校验实现代码[简单应用]
Nov 29 #PHP
php从右向左/从左向右截取字符串的实现方法
Nov 28 #PHP
PHP的array_diff()函数在处理大数组时的效率问题
Nov 27 #PHP
You might like
mysql 中InnoDB和MyISAM的区别分析小结
2008/04/15 PHP
如何批量替换相对地址为绝对地址(利用bat批处理实现)
2013/05/27 PHP
ThinkPHP有变量的where条件分页实例
2014/11/03 PHP
PHP 二维array转换json的实例讲解
2018/08/21 PHP
javascript数组使用调用方法汇总
2007/12/08 Javascript
JavaScript 大数据相加的问题
2011/08/03 Javascript
JQuery学习笔录 简单的JQuery
2012/04/09 Javascript
关于innerHTML后丢失动态绑定的EVENT问题解决方法
2013/05/19 Javascript
JS判断数组中是否有重复值得三种实用方法
2013/08/16 Javascript
JQ获取动态加载的图片大小的正确方法分享
2013/11/08 Javascript
js检测用户输入密码强度
2015/10/22 Javascript
javascript显示倒计时控制按钮的简单实现
2016/06/07 Javascript
Bootstrap Scrollspy源码学习
2017/03/02 Javascript
import与export在node.js中的使用详解
2017/09/28 Javascript
vue.js引入外部CSS样式和外部JS文件的方法
2019/01/06 Javascript
简单通过settimeout看javascript的运行机制
2019/05/10 Javascript
JS删除String里某个字符的方法
2021/01/06 Javascript
Jquery ajax书写方法代码实例解析
2020/06/12 jQuery
[01:56]《DOTA2》中文配音CG
2013/04/22 DOTA
安装Python和pygame及相应的环境变量配置(图文教程)
2017/06/04 Python
tensorflow获取变量维度信息
2018/03/10 Python
浅谈Pandas中map, applymap and apply的区别
2018/04/10 Python
Python实现 版本号对比功能的实例代码
2019/04/18 Python
Python socket连接中的粘包、精确传输问题实例分析
2020/03/24 Python
卸载tensorflow-cpu重装tensorflow-gpu操作
2020/06/23 Python
详解css3 flex弹性盒自动铺满写法
2020/09/17 HTML / CSS
美国电子元器件分销商:Newark element14
2018/01/13 全球购物
物理教育专业毕业生推荐信
2013/11/03 职场文书
日语专业个人的求职信
2013/12/03 职场文书
员工安全生产承诺书
2014/05/22 职场文书
临时租车协议范本
2014/09/23 职场文书
小学见习报告
2014/10/31 职场文书
防震减灾主题班会
2015/08/14 职场文书
行政后勤人员工作计划应该怎么写?
2019/08/16 职场文书
golang日志包logger的用法详解
2021/05/05 Golang
springboot集成flyway自动创表的详细配置
2021/06/26 Java/Android