关于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 相关文章推荐
编写PHP的安全策略
Oct 09 PHP
PHP实现多条件查询实例代码
Jul 17 PHP
CI(CodeIgniter)框架介绍
Jun 09 PHP
PHP简单实现“相关文章推荐”功能的方法
Jul 19 PHP
PHP的mysqli_query参数MYSQLI_STORE_RESULT和MYSQLI_USE_RESULT的区别
Sep 29 PHP
php实现的网络相册图片防盗链完美破解方法
Jul 01 PHP
PHP获取指定月份第一天和最后一天的方法
Jul 18 PHP
WordPress中用于获取文章作者与分类信息的方法整理
Dec 17 PHP
PHP版本的选择5.2.17 5.3.27 5.3.28 5.4 5.5兼容性问题分析
Apr 04 PHP
PHP mysqli事务操作常用方法分析
Jul 22 PHP
PHP 获取 ping 时间的实现方法
Sep 29 PHP
PDO::errorCode讲解
Jan 28 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注释和去除空格函数分享
2014/03/13 PHP
PHP fopen()和 file_get_contents()应用与差异介绍
2014/03/19 PHP
php实现MySQL数据库备份与还原类实例
2014/12/09 PHP
PHP使用PHPexcel导入导出数据的方法
2015/11/14 PHP
Yii中srbac权限扩展模块工作原理与用法分析
2016/07/14 PHP
浅谈php和js中json的编码和解码
2016/10/24 PHP
thinkphp5 加载静态资源路径与常量的方法
2017/12/24 PHP
javascript 日历提醒系统( 兼容所有浏览器 )
2009/04/07 Javascript
js弹出的对话窗口永远保持居中显示
2012/12/15 Javascript
jQuery选择器源码解读(八):addCombinator函数
2015/03/31 Javascript
node.js下LDAP查询实例分享
2015/09/30 Javascript
JS实现Fisheye效果动感放大菜单代码
2015/10/21 Javascript
AngularJS基础 ng-disabled 指令详解及简单示例
2016/08/01 Javascript
实例解析Array和String方法
2016/12/14 Javascript
浅谈React深度编程之受控组件与非受控组件
2017/12/26 Javascript
vue2.0 实现导航守卫(路由守卫)
2018/05/21 Javascript
javascript设计模式 ? 状态模式原理与用法实例分析
2020/04/22 Javascript
详解vue高级特性
2020/06/09 Javascript
JS数组索引检测中的数据类型问题详解
2021/01/11 Javascript
Python中的XML库4Suite Server的介绍
2015/04/14 Python
利用Python如何批量修改数据库执行Sql文件
2018/07/29 Python
Python求两点之间的直线距离(2种实现方法)
2019/07/07 Python
Pytorch 计算误判率,计算准确率,计算召回率的例子
2020/01/18 Python
美国波道夫·古德曼百货官网:Bergdorf Goodman
2017/11/07 全球购物
英国珠宝和手表专家:Pleasance & Harper
2020/10/21 全球购物
PyQt 如何创建自定义QWidget
2021/03/24 Python
儿科护理实习自我鉴定
2013/09/19 职场文书
医科大学生的自我评价
2013/12/04 职场文书
医院实习接收函
2014/01/12 职场文书
元旦晚会策划方案
2014/02/18 职场文书
yy婚礼主持词
2014/03/14 职场文书
中学生运动会口号
2014/06/07 职场文书
2014年英语教研组工作总结
2014/12/06 职场文书
期末个人总结范文
2015/02/13 职场文书
爱护环境卫生倡议书
2015/04/29 职场文书
CSS中calc(100%-100px)不加空格不生效
2023/05/07 HTML / CSS