【发布时间】:2013-08-18 17:16:01
【问题描述】:
我可以假设以前有人问过这个问题,但我找不到任何问题。
我有一个代表十六进制值的字符串,比如
$sHex = "314E6B";
我想将此字符串尽可能简单/优雅地转换为包含这三个字符的十进制值的数组,即具有值的数组
(49, 78, 107)
我查看了pack、hex2dec、array_split,但这些将包括我试图避免的循环。首选一两行(无循环)的解决方案。
【问题讨论】:
我可以假设以前有人问过这个问题,但我找不到任何问题。
我有一个代表十六进制值的字符串,比如
$sHex = "314E6B";
我想将此字符串尽可能简单/优雅地转换为包含这三个字符的十进制值的数组,即具有值的数组
(49, 78, 107)
我查看了pack、hex2dec、array_split,但这些将包括我试图避免的循环。首选一两行(无循环)的解决方案。
【问题讨论】:
代码:
$sHex = "314E6B";
$aDec = array_map('hexdec', str_split($sHex, 2));
print_r( $aDec );
将输出:
Array
(
[0] => 49
[1] => 78
[2] => 107
)
【讨论】: