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生成便于打印的网页
Oct 09 PHP
php,ajax实现分页
Mar 27 PHP
PHP 超链接 抓取实现代码
Jun 29 PHP
PHP取进制余数函数代码
Jan 19 PHP
有关PHP性能优化的介绍
Jun 20 PHP
php函数间的参数传递(值传递/引用传递)
Sep 23 PHP
FireFox浏览器使用Javascript上传大文件
Oct 30 PHP
php中隐形字符65279(utf-8的BOM头)问题
Aug 16 PHP
Javascript与PHP验证用户输入URL地址是否正确
Oct 09 PHP
php mysql数据库操作类(实例讲解)
Aug 06 PHP
php实现QQ小程序发送模板消息功能
Sep 18 PHP
Laravel 使用查询构造器配合原生sql语句查询的例子
Oct 12 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
php下intval()和(int)转换使用与区别
2008/07/18 PHP
在JavaScript中调用php程序
2009/03/09 PHP
最新制作ThinkPHP3.2.3完全开发手册
2015/11/23 PHP
CodeIgniter基于Email类发邮件的方法
2016/03/29 PHP
PHP实现普通hash分布式算法简单示例
2018/08/06 PHP
Javascript 不能释放内存.
2006/09/07 Javascript
对YUI扩展的Gird组件 Part-1
2007/03/10 Javascript
你需要知道的10个最佳javascript开发实践小结
2012/04/15 Javascript
Jquery显示、隐藏元素以及添加删除样式
2013/08/09 Javascript
javascript模拟地球旋转效果代码实例
2013/12/02 Javascript
javascript将url中的参数加密解密代码
2014/11/17 Javascript
JavaScript变量的作用域全解析
2015/08/14 Javascript
jQuery实现textarea自动增长宽高的方法
2015/12/18 Javascript
基于jQuery实现点击弹出层实例代码
2016/01/01 Javascript
ES6新特性之变量和字符串用法示例
2017/04/01 Javascript
javaScript中封装的各种写法示例(推荐)
2017/07/03 Javascript
详解Webpack DLL用法以及功能
2017/07/11 Javascript
AngularJS监听ng-repeat渲染完成的方法
2018/03/20 Javascript
详解JavaScript 中 if / if...else...替换方式
2018/07/15 Javascript
vue 根据选择条件显示指定参数的例子
2019/11/09 Javascript
vue 实现一个简单的全局调用弹窗案例
2020/09/10 Javascript
JavaScript如何操作css
2020/10/24 Javascript
Python使用MD5加密字符串示例
2014/08/22 Python
Python求解平方根的方法
2015/03/11 Python
如何使用 Pylint 来规范 Python 代码风格(来自IBM)
2018/04/06 Python
Python中反射和描述器总结
2018/09/23 Python
Python通过yagmail实现发送邮件代码解析
2020/10/27 Python
意大利奢华内衣制造商:Cosabella
2017/08/29 全球购物
瑞典耳机品牌:URBANISTA
2019/12/03 全球购物
团队队名口号大全
2014/06/06 职场文书
英语自我介绍演讲稿
2014/09/01 职场文书
单位单身证明样本
2014/10/11 职场文书
公司市场部岗位职责
2015/04/15 职场文书
银行岗位培训心得体会
2016/01/09 职场文书
助学金申请书该怎么写?
2019/07/16 职场文书
python实现三阶魔方还原的示例代码
2021/04/28 Python