关于PHP中字符串与多进制转换函数的实例代码
转换函数
/** *[字符串转换为(2,8,16进制)ASCII码] *@paramstring$str[待处理字符串] *@paramboolean$encode[字符串转换为ASCII|ASCII转换为字符串] *@paramstring$intType[2,8,16进制标示] *@returnstringbyte_str[处理结果] *@authoralexander */ functionstrtoascii($str,$encode=true,$intType="2"){ if($encode==true){ $byte_array=str_split($str); foreach($byte_arrayas&$value){ $value=ord($value); switch($intType){ case16: $value=sprintf("%02x",$value); break; case8: $value=sprintf("%03o",$value); break; default: $value=sprintf("%08b",$value); break; } } unset($value); $byte_str=implode('',$byte_array); } else{ $chunk_size=$intType==16?2:($intType==8?3:8); $byte_array=chunk_split($str,$chunk_size); $byte_array=array_filter(explode("\r\n",$byte_array)); foreach($byte_arrayas&$value){ $fun_name=$intType==16?'hexdec':($intType==8?'octdec':'bindec'); $value=$fun_name($value); $value=chr($value); } unset($value); $byte_str=implode('',$byte_array); } return$byte_str; }
PHP中的多进制
PHP整型值可以使用十进制,十六进制,八进制或二进制表示,前面可以加上可选的符号(-或者+)。
二进制:[+-]?0b[01]+
八进制:[+-]?0[1-7]+
十进制:[+-]?[1-9][0-9]*|0
十六进制:[+-]?[xX][0-9a-fA-F]+
多进制转换函数:
bindec | 二进制转换为十进制 |
decbin | 十进制转换为二进制 |
octdec | 八进制转换为十进制 |
decoct | 十进制转换为八进制 |
hexdec | 十六进制转换为十进制 |
dechex | 十进制转换为十六进制 |
以上就是小编为大家带来的关于PHP中字符串与多进制转换函数的实例代码全部内容了,希望大家多多支持毛票票~