关于PHP中字符串与多进制转换函数的实例代码


Posted in PHP onNovember 03, 2016

转换函数

/**
 * [字符串转换为(2,8,16进制)ASCII码]
 * @param string $str   [待处理字符串]
 * @param boolean $encode [字符串转换为ASCII|ASCII转换为字符串]
 * @param string $intType [2,8,16进制标示]
 * @return string byte_str [处理结果]
 * @author alexander
 */
function strtoascii($str, $encode=true, $intType="2"){
  if($encode == true){
    $byte_array = str_split($str);
    foreach($byte_array as &$value){
      $value = ord($value);
      switch ($intType) {
        case 16:
          $value = sprintf("%02x", $value);
          break;
        case 8:
          $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_array as &$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中字符串与多进制转换函数的实例代码全部内容了,希望大家多多支持三水点靠木~

PHP 相关文章推荐
一个数据采集类
Feb 14 PHP
php中批量修改文件后缀名的函数代码
Oct 23 PHP
PHP中集成PayPal标准支付的实现方法分享
Feb 06 PHP
web server使用php生成web页面的三种方法总结
Oct 28 PHP
使用phpQuery采集网页的方法
Nov 13 PHP
php+memcache实现的网站在线人数统计代码
Jul 04 PHP
深入浅析PHP7.0新特征(五大新特征)
Oct 29 PHP
php计算年龄精准到年月日
Nov 17 PHP
Symfony生成二维码的方法
Feb 04 PHP
全面解读PHP的Yii框架中的日志功能
Mar 17 PHP
Zend Framework实现自定义过滤器的方法
Dec 09 PHP
php封装db类连接sqlite3数据库的方法实例
Dec 19 PHP
注释PHP和html混合代码的小技巧(分享)
Nov 03 #PHP
Ubuntu VPS中wordpress网站打开时提示”建立数据库连接错误”的解决办法
Nov 03 #PHP
PHP 接入微信扫码支付总结(总结篇)
Nov 03 #PHP
php正则去除网页中所有的html,js,css,注释的实现方法
Nov 03 #PHP
PHP 微信扫码支付源代码(推荐)
Nov 03 #PHP
php使用正则表达式去掉html中的注释方法
Nov 03 #PHP
使用正则去除php代码中的注释方法
Nov 03 #PHP
You might like
PHP迭代器实现斐波纳契数列的函数
2013/11/12 PHP
PHP用星号隐藏部份用户名、身份证、IP、手机号等实例
2014/04/08 PHP
php实现上传图片文件代码
2015/07/19 PHP
PHP关键特性之命名空间实例详解
2017/05/06 PHP
php实现的中秋博饼游戏之掷骰子并输出结果功能详解
2017/11/06 PHP
使用PHPUnit进行单元测试并生成代码覆盖率报告的方法
2019/03/08 PHP
JavaScript 序列化对象实现代码
2009/12/18 Javascript
js 上传图片预览问题
2010/12/06 Javascript
myEvent.js javascript跨浏览器事件框架
2011/10/24 Javascript
Jquery 获取checkbox的checked问题
2011/11/16 Javascript
JavaScript使用HTML5的window.postMessage实现跨域通信例子
2014/04/11 Javascript
javascript实现锁定网页、密码解锁效果(类似系统屏幕保护效果)
2014/08/15 Javascript
javascript将数字转换整数金额大写的方法
2015/01/27 Javascript
javascript组合使用构造函数模式和原型模式实例
2015/06/04 Javascript
用原生js统计文本行数的简单示例
2016/08/19 Javascript
原生js实现可爱糖果数字时间特效
2016/12/30 Javascript
详解Angular.js指令中scope类型的几种特殊情况
2017/02/21 Javascript
jQuery使用bind函数实现绑定多个事件的方法
2017/10/11 jQuery
详解JS数值Number类型
2018/02/07 Javascript
Echarts在Taro微信小程序开发中的踩坑记录
2020/11/09 Javascript
python cx_Oracle模块的安装和使用详细介绍
2017/02/13 Python
Python3 queue队列模块详细介绍
2018/01/05 Python
Python编写一个优美的下载器
2018/04/15 Python
Python 数据库操作 SQLAlchemy的示例代码
2019/02/18 Python
python实现图片插入文字
2019/11/26 Python
Python使用os.listdir和os.walk获取文件路径
2020/05/21 Python
JD Sports德国官网:英国领先的运动鞋和运动服饰零售商
2018/02/26 全球购物
Coltorti Boutique官网:来自意大利的设计师品牌买手店
2018/11/09 全球购物
Miller Harris官网:英国小众香水品牌
2020/09/24 全球购物
如何进行Linux分区优化
2016/09/13 面试题
校园环保建议书
2014/05/14 职场文书
活动总结格式
2014/08/30 职场文书
干部作风建设年活动剖析材料
2014/10/23 职场文书
2015年幼儿园中班下学期工作总结
2015/05/22 职场文书
旅游安全责任协议书
2016/03/22 职场文书
windows10 家庭版下FTP服务器搭建教程
2022/08/05 Servers