关于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&java(二)
Oct 09 PHP
防止MySQL注入或HTML表单滥用的PHP程序
Jan 21 PHP
php 文件夹删除、php清除缓存程序
Aug 25 PHP
在字符串指定位置插入一段字符串的php代码
Feb 16 PHP
php max_execution_time执行时间问题
Jul 17 PHP
Smarty中调用FCKeditor的方法
Oct 27 PHP
PHP执行linux命令常用函数汇总
Feb 02 PHP
php模拟post上传图片实现代码
Jun 24 PHP
[原创]smarty简单模板变量输出方法
Jul 09 PHP
php+Memcached实现简单留言板功能示例
Feb 15 PHP
php实现的简单多进程服务器类完整示例
Feb 01 PHP
php将字符串转换为数组实例讲解
May 05 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
我的论坛源代码(八)
2006/10/09 PHP
PHP容易忘记的知识点分享
2013/04/30 PHP
PHP+javascript制作带提示的验证码源码分享
2014/05/28 PHP
php的GD库imagettftext函数解决中文乱码问题
2015/01/24 PHP
php使用cookie保存登录用户名的方法
2015/01/26 PHP
php实现简单加入购物车功能
2017/03/07 PHP
javascript 写类方式之六
2009/07/05 Javascript
JS 中document.URL 和 windows.location.href 的区别
2009/11/11 Javascript
jQuery中调用WebService方法小结
2011/03/28 Javascript
JS鼠标事件大全 推荐收藏
2011/11/01 Javascript
jQuery EasyUI API 中文文档 - PropertyGrid属性表格
2011/11/18 Javascript
jQuery取id有.的值的方法
2014/05/21 Javascript
JavaScript实现的字符串replaceAll函数代码分享
2015/04/02 Javascript
jquery实现带缩略图的可定制高度画廊效果(5种)
2015/08/28 Javascript
JS Attribute属性操作详解
2016/05/19 Javascript
学习Bootstrap滚动监听 附调用方法
2016/07/02 Javascript
jquery插件bootstrapValidator数据验证详解
2016/11/09 Javascript
JavaScript 复制对象与Object.assign方法无法实现深复制
2018/11/02 Javascript
使用vue重构资讯页面的实例代码解析
2019/11/26 Javascript
JavaScript实现Tab标签页切换的最简便方式(4种)
2020/06/28 Javascript
vue+iview框架实现左侧动态菜单功能的示例代码
2020/07/23 Javascript
vue项目实现设置根据路由高亮对应的菜单项操作
2020/08/06 Javascript
[02:48]DOTA2英雄基础教程 拉席克
2013/12/12 DOTA
在Python的Django框架中实现Hacker News的一些功能
2015/04/17 Python
python从入门到精通(DAY 2)
2015/12/20 Python
python中利用zfill方法自动给数字前面补0
2018/04/10 Python
Linux下python制作名片示例
2018/07/20 Python
python实现两张图片的像素融合
2019/02/23 Python
python3实现二叉树的遍历与递归算法解析(小结)
2019/07/03 Python
Python Django2.0集成Celery4.1教程
2019/11/19 Python
python 控制台单行刷新,多行刷新实例
2020/02/19 Python
10张动图学会python循环与递归问题
2021/02/06 Python
HTML5 Canvas API中drawImage()方法的使用实例
2016/03/25 HTML / CSS
德国富尔达运动鞋店:43einhalb
2020/12/25 全球购物
志愿者活动总结报告
2014/06/27 职场文书
Pycharm远程调试和MySQL数据库授权问题
2022/03/18 MySQL