如标题所示,在 PHP 中将 273ef9
等十六进制数转换为 27/3e/f9
等路径的有效方法是什么?
已更新::: 实际上,我想要一个不正常的数字转换为十进制数,然后进一步转换为路径....但也许我们可以跳过中间步骤。
最佳答案
将 str_split 与 implode 结合起来怎么样?可能不是 super 高效但非常可读:
内爆('/',str_split("273ef9",2));
作为旁注,这当然适用于较大的十六进制字符串,并且可以处理部分(长度为 3、5、7)十六进制数字(通过在最后一个斜杠后将其打印为单个字母)。
编辑:根据您现在的要求(十进制 -> 十六进制 -> 路径),它看起来像这样:
$num = 2572025;
$hex = dechex($num);
implode('/',str_split($hex,2));
当然,您可以将它组合成更短但可读性更差的表示:
内爆('/',str_split(dechex($num),2));
关于php 将十六进制数 273ef9 隐藏到路径 27/3e/f9,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6674321/