PHP | 使用pack()函数将十六进制字符串转换为字符串

Given hexadecimal string and we have to convert it into string of ASCII characters.

给定十六进制字符串,我们必须将其转换为ASCII字符字符串。

To convert a hex string to the string of ASCII characters, we can use pack() function with the format "H*" it represents that source string is in hexadecimal format.

要将十六进制字符串转换为ASCII字符的字符串 ,我们可以使用格式为“ H *”的 pack()函数,该函数表示源字符串为十六进制格式。

Syntax:

句法:

    pack("H*", hex_string);

Examples:

例子:

    Input: "48656c6c6f20776f726c64"
    Output: "Hello world"

    Input: "4142432031323320402324252e2058595a"
    Output: "ABC 123 @#$%. XYZ"

PHP code:

PHP代码:

<?php
    $str = "Hello world";
    $hex_str = bin2hex($str);
    $str1 = pack("H*", $hex_str);
    
    //printing both strings
    echo ("str = " . $str . "\n");
    echo ("hex_str = " . $hex_str . "\n");
    echo ("str1 = " . $str1 . "\n");
    
    $str = "ABC 123 @#$%. XYZ";
    $hex_str = bin2hex($str);
    $str1 = pack("H*", $hex_str);
    
    //printing both strings
    echo ("str = " . $str . "\n");
    echo ("hex_str = " . $hex_str . "\n");    
    echo ("str1 = " . $str1 . "\n");
?>

Output

输出量

str = Hello world
hex_str = 48656c6c6f20776f726c64
str1 = Hello world
str = ABC 123 @#$%. XYZ
hex_str = 4142432031323320402324252e2058595a
str1 = ABC 123 @#$%. XYZ


翻译自: https://www.includehelp.com/php/convert-hexadecimal-string-to-string-using-pack-function.aspx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值