本文目录一览:
- 1、PHP函数怎么把十进制转换为二进制
- 2、php编程:将26位字母进制转换为10进制数字,如何做?
- 3、用PHP写一个进制转换的程序。增加如下图的一个表单,用PHP函数完成。10转2,10转8,10转16进制。
- 4、PHP 浮点进制转换
- 5、关于PHP进制转换的代码,求大神帮忙编写一下。 2 8 16 可以实现这三个进制之间转换的代码。
PHP函数怎么把十进制转换为二进制
PHP decbin函数的作用是把十进制转换为二进制。
用法:
参数 描述
dec_number 必需。规定要转换的十进制数。
示例:
?php
echo decbin("3");
echo decbin("1");
echo decbin("1587");
echo decbin("7");
?
输出:
11
1
11000110011
111
php编程:将26位字母进制转换为10进制数字,如何做?
主要是加权法。
10进制结果=∑各位上的值*(进制数^各位权值)
a^b表示a的b次方。
比如你说的26进制
a-1
s-19
d-4
那么asd=1*(26^2)+19*(26^1)+4*(26^0)=1174(10进制)
如果是8进制数456=4*(8^2)+5*(8^2)+6*(8^0)=302(10进制)
分太少,不写源程序了,建立索引数组$arr[a]=1$,arr[b]=2..
再把输入的字母拆成单字符倒序数组使得$single[2]=a,$single[1]=s,$single[0]=d,按上面方法权值相加。
你懂的。
用PHP写一个进制转换的程序。增加如下图的一个表单,用PHP函数完成。10转2,10转8,10转16进制。
?php
$frombase = '';
$tobase = '';
if($_POST){
$frombase = $_POST['frombase'];
$type = $_POST['type'];
switch ($type) {
case 1:
$tobase = base_convert($frombase, 10, 2);break;
case 2:
$tobase = base_convert($frombase, 10, 8);break;
case 3:
$tobase = base_convert($frombase, 10, 16);break;
}
}
?
form action="" method="post"
数:input type="text" name="frombase" value="?php echo $frombase;?" size="20" /
select name="type"
option value="1"10to2/option
option value="2"10to8/option
option value="3"10to16/option
/select
input type="submit" value="转换" /
input type="text" value="?php echo $tobase;?" size="20"/
/form
试试看是不是您想要的写法。
PHP 浮点进制转换
下面是php实现的方法:
/**
* 十六进制浮点型转为十进制
* @param String $strHex 十六进制浮点数
*/
function hexToDecFloat($strHex) {
$v = hexdec($strHex);
$x = ($v ((1 23) - 1)) + (1 23) * ($v 31 | 1);
$exp = ($v 23 0xFF) - 127;
return $x * pow(2, $exp - 23);
}
你说得很高深的样子,又不举例,不知道你究竟需要把什么样子的数转换成什么,上面是例子看看是不是你要的吧,如果不是,请一定举例。
关于PHP进制转换的代码,求大神帮忙编写一下。 2 8 16 可以实现这三个进制之间转换的代码。
PHP内置进制转换函数: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
$hexadecimal = 'A37334';
echo base_convert($hexadecimal, 16, 2);
?