关于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 相关文章推荐
初学CAKEPHP 基础教程
Nov 02 PHP
php select,radio和checkbox默认选择的实现方法
May 15 PHP
ThinkPHP写第一个模块应用
Feb 20 PHP
PHP取整函数:ceil,floor,round,intval的区别详细解析
Aug 31 PHP
使用PHPExcel操作Excel用法实例分析
Mar 26 PHP
php通过curl模拟登陆DZ论坛
May 11 PHP
php中 ob_start等函数截取标准输出的方法
Jun 22 PHP
学习php设计模式 php实现享元模式(flyweight)
Dec 07 PHP
PHP入门教程之会话控制技巧(cookie与session)
Sep 11 PHP
php面向对象之反射功能与用法分析
Mar 29 PHP
php实现支持中文的文件下载功能示例
Aug 30 PHP
详解PHP文件的自动加载(autoloading)
Feb 04 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应用JSON技巧讲解
2013/02/03 PHP
用mysql_fetch_array()获取当前行数据的方法详解
2013/06/05 PHP
php file_get_contents抓取Gzip网页乱码的三种解决方法
2013/11/12 PHP
Symfony2安装的方法(2种方法)
2016/02/04 PHP
php readfile下载大文件失败的解决方法
2017/05/22 PHP
php实现通过stomp协议连接ActiveMQ操作示例
2020/02/23 PHP
js类的静态属性和实例属性的理解
2009/10/01 Javascript
浅析ajax请求json数据并用js解析(示例分析)
2013/07/13 Javascript
JavaScript字符串对象slice方法入门实例(用于字符串截取)
2014/10/16 Javascript
JavaScript检测弹出窗口是否已经关闭的方法
2015/03/24 Javascript
javascript 闭包详解
2015/07/02 Javascript
JavaScript检测并限制复选框选中个数的方法
2015/08/12 Javascript
easyui Draggable组件实现拖动效果
2015/08/19 Javascript
JavaScript的React框架中的JSX语法学习入门教程
2016/03/05 Javascript
JavaScript实现相册弹窗功能(zepto.js)
2016/06/21 Javascript
React Native实现简单的登录功能(推荐)
2016/09/19 Javascript
详解Angular 4.x 动态创建组件
2017/04/25 Javascript
Angularjs Ng_repeat中实现复选框选中并显示不同的样式方法
2018/09/12 Javascript
mpvue+vuex搭建小程序详细教程(完整步骤)
2018/09/30 Javascript
搭建基于express框架运行环境的方法步骤
2018/11/15 Javascript
React.js组件实现拖拽排序组件功能过程解析
2020/04/27 Javascript
vue+ElementUI 关闭对话框清空验证,清除form表单的操作
2020/08/06 Javascript
Python编写百度贴吧的简单爬虫
2015/04/02 Python
详解python播放音频的三种方法
2019/09/23 Python
python实现拉普拉斯特征图降维示例
2019/11/25 Python
python PIL模块的基本使用
2020/09/29 Python
Python自动化办公Excel模块openpyxl原理及用法解析
2020/11/05 Python
Steve Madden官网:美国鞋类品牌
2017/01/29 全球购物
Diamondback自行车:拥有你的冒险
2019/04/22 全球购物
Java面试题:为什么要用Java
2012/05/11 面试题
社团2014年植树节活动总结
2014/03/11 职场文书
介绍信模板
2015/01/31 职场文书
慰问信范文
2015/02/14 职场文书
教师节班会开场白
2015/06/01 职场文书
余世维讲座观后感
2015/06/11 职场文书
码云(gitee)通过git自动同步到阿里云服务器
2022/12/24 Servers