关于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 相关文章推荐
建立文件交换功能的脚本(一)
Oct 09 PHP
递归删除一个节点以及该节点下的所有节点示例
Mar 19 PHP
PHP批量去除BOM头代码分享
Jun 26 PHP
详解php比较操作符的安全问题
Dec 03 PHP
关于php中一些字符串总结
May 05 PHP
CI框架数据库查询之join用法分析
May 18 PHP
PHP判断密码强度的方法详解
May 26 PHP
浅谈PHP中的面向对象OOP中的魔术方法
Jun 12 PHP
PHP性能分析工具xhprof的安装使用与注意事项
Dec 19 PHP
ThinkPHP5.0多个文件上传后找不到临时文件的修改方法
Jul 30 PHP
php用户名的密码加密更安全的方法
Jun 21 PHP
PHP7 新增功能
Mar 09 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如何编写易读的代码
2007/07/10 PHP
PHP的preg_match匹配字符串长度问题解决方法
2014/05/03 PHP
php使用pdo连接并查询sql数据库的方法
2014/12/24 PHP
php微信公众平台开发类实例
2015/04/01 PHP
打豆豆小游戏 用javascript编写的[打豆豆]小游戏
2013/01/08 Javascript
iframe异步加载实现点击左边菜单加载右边内容实例讲解
2013/03/04 Javascript
jquery选择器之基本过滤选择器详解
2014/01/27 Javascript
JavaScript模拟深蓝vs卡斯帕罗夫的国际象棋对局示例
2015/04/22 Javascript
JavaScript实现点击文字切换登录窗口的方法
2015/05/11 Javascript
基于Jquery制作图片文字排版预览效果附源码下载
2015/11/18 Javascript
JS使用cookie设置样式的方法
2016/06/30 Javascript
微信小程序之滚动视图容器的实现方法
2017/09/26 Javascript
Vue 中使用vue2-highcharts实现曲线数据展示的方法
2018/03/05 Javascript
判断文字超过2行添加展开按钮,未超过则不显示,溢出部分显示省略号
2019/04/28 Javascript
浅析Vue 防抖与节流的使用
2019/11/14 Javascript
使用 Jest 和 Supertest 进行接口端点测试实例详解
2020/04/25 Javascript
详解vue 组件的实现原理
2020/11/12 Javascript
Python 模拟登陆的两种实现方法
2017/08/10 Python
Numpy中的mask的使用
2018/07/21 Python
python3.5安装python3-tk详解
2019/04/26 Python
Python+unittest+requests 接口自动化测试框架搭建教程
2020/10/09 Python
使用豆瓣源来安装python中的第三方库方法
2021/01/26 Python
python爬虫scrapy基本使用超详细教程
2021/02/20 Python
一款纯css3实现的非常实用的鼠标悬停特效演示
2014/11/05 HTML / CSS
HTML5 Canvas实现图片缩放、翻转、颜色渐变的代码示例
2016/02/28 HTML / CSS
HTML最新标准HTML5总结(必看)
2016/06/13 HTML / CSS
创业计划书怎样才能打动风投
2014/01/01 职场文书
国庆节文艺活动方案
2014/02/03 职场文书
学生感冒英文请假条
2014/02/04 职场文书
勾股定理课后反思
2014/04/26 职场文书
六年级小学生评语
2014/12/26 职场文书
学生评语集锦
2015/01/04 职场文书
教学工作总结范文5篇
2019/08/19 职场文书
为Java项目添加Redis缓存的方法
2021/05/18 Redis
HTML+VUE分页实现炫酷物联网大屏功能
2021/05/27 Vue.js
Linux下搭建SFTP服务器的命令详解
2022/06/25 Servers