返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >PHP7中对十六进制字符串处理的问题详解
  • 923
分享到

PHP7中对十六进制字符串处理的问题详解

PHP7十六进制字符串 2021-05-26 03:05:03 923人浏览
摘要

本篇文章由PHP7教程栏目给大家介绍一下关于 php7 中 "0xFFFFFFFF" 和 0xFFFFFFFF 的问题。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。具体问题:$t1 = 0x3FFFFFFF & (1 * (0xd5b42e

本篇文章由PHP7教程栏目给大家介绍一下关于 php7 中 "0xFFFFFFFF" 和 0xFFFFFFFF 的问题。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

具体问题:


$t1 = 0x3FFFFFFF & (1 * (0xd5b42e11));
$t2 = 0x3FFFFFFF & (1 * ("0xd5b42e11"));
var_dump($t1,$t2);

以上代码在 php7(不含)以下平台的值为:


int(364129809)
int(364129809)

而在 php7的值为:


int(364129809)
int(0)

请问,在 php7的环境下,应该如何处理 0x.$str 使它同上面值一样呢?

解决办法:

PHP7开始,含十六进制字符串不再被认为是数字

如果非要检测字符串是否含十六进制数字,官方建议的代码是


<?php
$str = "0xffff";
$int = filter_var($str, FILTER_VALIDATE_INT, FILTER_FLAG_ALLOW_HEX);
if (false === $int) {
    throw new Exception("Invalid integer!");
}
var_dump($int); // int(65535)
?>

针对上述问题就应该改成


$t1 = 0x3FFFFFFF & (1 * (0xd5b42e11));
$t2 = 0x3FFFFFFF & (1 * (filter_var("0xd5b42e11", FILTER_VALIDATE_INT, FILTER_FLAG_ALLOW_HEX)));
var_dump($t1,$t2);

到此这篇关于PHP7中对十六进制字符串处理的问题详解的文章就介绍到这了,更多相关PHP7中对十六进制字符串处理的问题内容请搜索编程界以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程界!

--结束END--

本文标题: PHP7中对十六进制字符串处理的问题详解

本文链接: https://www.lsjlt.com/news/46.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • php十六进制值怎么转换成字符串
    在php中,可以利用hex2bin()函数来将十六进制值转换为字符串,该函数的作用就是把十六进制值转换为ASCII编码的字符值,即字符串,语法为“hex2bin(十六进制值)”;如果转换成功则返回对应字符串,如果失败则返回FALSE。本教程操作环境:windows7系统、PHP8.1版、DELL G3电脑在php中,可以利用hex2bin()函数来将十六进制值转换为字符串。hex2bin()函数可以 ...
    752
    2023-03-24
    php php字符串
  • redis命令行查看中文不乱码的方法(十六进制字符串处理)
    redis命令行查看中文不乱码Redis在使用命令行操作时,如果查看内容中包含中文,会显示16进制的字符串”xe4xb8xadxe5x9bxbd”127.0.0.1:6379> set k1 '中国'OK127.0.0.1:6379> ...
    677
    2023-03-24
    乱码 字符串 中文
  • php怎么将十六进制值转换为字符串
    在php中,可以利用hex2bin()函数来将十六进制值转换为字符串,该函数的作用就是把十六进制值转换为ASCII编码的字符值,语法“hex2bin(十六进制值)”。 ...
    698
    2023-03-24
    php 十六进制 字符串
  • Android字符串和十六进制相互转化出现的中文乱码问题
    废话不读说了,直接给大家贴代码了,代码附有注释,可以说明一切,本文写的不好,还请见谅。import java.io.ByteArrayOutputStream;/*** Created by Administrator on 2016/ ...
    861
    2023-03-24
    乱码 进制 十六进制 Android
  • php中文字符怎么转十六进制
    php中文字符转十六进制的方法:1、创建一个PHP示例文件;2、通过“function hexencode($s){return preg_replace('/(.)/es',"str_pad(...)}”方法将汉字转换为16进制编码即可。 ...
    112
    2023-03-24
    php
  • Python字符串处理实例详解
    Python字符串处理实例详解一、拆分含有多种分隔符的字符串1.如何拆分含有多种分隔符的字符串问题: 我们要把某个字符串依据分隔符号拆分不同的字段,该字符串包含多种不同的分隔符,例如:s = "ab;cd|efg|hi,jkl|mnt ...
    361
    2023-03-24
    字符串 详解 实例
  • php 文件怎么转十六进制
    php文件转十六进制的方法:1、创建一个PHP示例文件;2、通过“function fileToHex($file){...}”方法将文件内容转为16进制输出即可。 ...
    423
    2023-03-24
    php 十六进制
  • python字符串处理方法
    字符和字符串可以用来相加来组合成一个字符串输出; 字符或字符串复制输出。 You can extract a substring from a string by using slice. Format: [start:end:step][ ...
    678
    2023-03-24
    字符串 方法 python
  • JavaScript中怎么实现字符串处理
    这篇文章将为大家详细讲解有关JavaScript中怎么实现字符串处理,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。字符串去重function uniqStr(str) {var str ...
    789
    2023-03-24
    javascript
  • php 怎么实现rgb转十六进制
    php实现rgb转十六进制的方法:1、创建一个PHP示例文件;2、通过“function RGBToHex($rgb){...}”方法实现RGB转十六进制即可。 ...
    601
    2023-03-24
    php rgb 十六进制
  • Python字符串处理的方法
    本文小编为大家详细介绍“Python字符串处理的方法”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python字符串处理的方法”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1.字符串的切片和相乘(1)切片(2) ...
    809
    2023-03-24
    python
  • nodejs中怎么将十六进制字符串型数据与btye型数据进行转换
    nodejs中怎么将十六进制字符串型数据与btye型数据进行转换,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。byte型转换十六进制字符串/** * byte ...
    478
    2023-03-24
    nodejs
  • php字符串处理函数有哪些
    php中常用的字符串处理函数有strlen()、strpos()、trim()几种1.strlen()函数strlen()函数作用:php中strlen()函数的作用是用于获取字符串的长度。strlen()函数语法:strlen(strin ...
    118
    2023-03-24
    PHP 字符串
  • php7怎么将字符串转为数组
    转换方法:1、用str_split(),语法“str_split(str,length)”;2、用explode(),语法“explode(separator,str,limit)”;3、用强制转换,语法“(array)string”。 ...
    711
    2023-03-24
    php 字符串转数组
  • php怎么把二进制转十六进制
    php把二进制转十六进制的方法:1、创建一个PHP示例文件;2、通过bin2hex()函数把ASCII字符的字符串转换为十六进制值。 ...
    948
    2023-03-24
    php 二进制 十六进制
  • php怎么实现八进制转换十六进制
    php实现八进制转换十六进制的方法:1、创建一个PHP示例文件;2、通过“base_convert($oct,8,16);”方法把八进制数转换为十六进制数即可。 ...
    812
    2023-03-24
    php 八进制 十六进制
  • linux bash字符串处理大全
    取得字符串的长度代码:%x="abcd"#方法一%expr length $x4# 方法二%echo ${#x}4# 方法三%expr "$x" : ".*"4# expr 的帮助# STRING : REGEXP anchored ...
    194
    2023-03-24
    字符串 大全 linux
  • python字符串处理以及字符串格式化
    一、python字符串处理目录:1.算长度(len),某个元素出现的次数(count)2.切片   [ ],repr:把不可见字符显示出来3.查找 #find,rfind从右边查找4.字符串和列表之间的转换(split,join list) ...
    639
    2023-03-24
    字符串 python
  • Android 十六进制状态管理实例详解
    这篇文章主要为大家介绍了Android 十六进制状态管理实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪 ...
    870
    2023-03-24
    Android 十六进制状态管理 Android 状态管理
  • php怎么将数据转换为十六进制
    转换方法:1、用dechex(),可把十进制转换为十六进制,语法“dechex(十进制值)”;2、用base_convert(),语法“bindec(十进制值,10,16)”;3、用bin2hex(),语法“bin2hex(字符串)”。 ...
    545
    2023-03-24
    php 十六进制
热门问答
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作