PHP实现十进制、二进制、八进制和十六进制转换相关函数用实现十进制、二进制、八进制和十六进制转换相关函数用
法分析法分析
本文实例讲述了PHP实现十进制、二进制、八进制和十六进制转换相关函数用法。分享给大家供大家参考,具体如下:
1.二进制:二进制:
1.1.二进制转十进制:二进制转十进制:
函数:bindec(string $binary_string)
@param $binary_string 参数表示所要转换的二进制字符串。
@return 返回与$binary_string参数所表示的二进制数的十进制数等价值。
函数说明:函数说明:
bindec()将一个二进制数转换成Integer类型或者出于大小的需要,转换为float类型。
bindec()将所有的$binary_string值解释为无符号整数。这是因为bindec()函数将其最高有效位视为数量级而非符号位。【即最高
位0或1并不被bindec()表示为+或-而是按值来表示1就是1,0就是0】
注意:注意:参数必须为字符串,使用其他的数据类型会导致不可预知的结果。
范例:
<?php
echo bindec('10010') . "";
echo bindec('00110') . "";
echo bindec('1111') . "";
以上程序语句会依次输出:18,6,15
1.2.二进制转十六进制二进制转十六进制
函数:bin2hex(string $str)
@param $str 将要转换的ASCII字符的字符串。
@return 返回转换字符串的十六进制值。
函数说明:函数说明:
bin2hex() 函数把 ASCII 字符的字符串转换为十六进制值。字符串可通过使用 pack() 函数再转换回去。
bin2hex() 函数转换使用字节方式,高四位字优先。
范例:
(1)bin2hex()转换‘chengdu’为十六进制值:
<?php
$str = bin2hex('chengdu');
echo $str;
以上程序语句会输出:6368656e676475
(2)把一个字符串值从二进制转换为十六进制,再转换回去:
<?php
$str = 'chengdu';
echo bin2hex($str) . "<br/>";
echo pack("H*", bin2hex($str)) . "<br/>";
以上程序语句依次输出:6368656e676475, chengdu
2.八进制:八进制:
2.1.八进制转十进制:八进制转十进制:
函数:octdec(string $octal_string)
@param $octal_string 参数表示将要转换的八进制字符串。
@return 返回$octal_string参数所表示的八进制数的十进制等值。
评论0