在php中,我们可以使用几种方法将字符串转换为字节数组。在本文中,我们将重点介绍两种最常用的方法。
方法一:使用str_split函数
str_split(string $ string,int $ split_length = 1):将字符串拆分为子字符串,将它们放在数组中,并返回该数组。每个字符串的长度将是split_length参数指定的长度。如果未指定split_length,则默认为1。
以下是将字符串转换为字节数组的示例代码:
$str = "Hello World!";
$bytes = str_split($str);
foreach($bytes as $byte) {
echo ord($byte) . " ";
}在此示例代码中,我们使用了ord函数将每个字符转换为ASCII码,并使用foreach循环将字节数组打印到控制台上。输出将是:
立即学习“PHP免费学习笔记(深入)”;
72 101 108 108 111 32 87 111 114 108 100 33
方法二:使用unpack函数
此方法需要使用pack函数将字符串打包为二进制数据。此外,使用unpack函数时需要指定打包的数据类型,并将返回值转换为字节数组。
以下是示例代码:
$str = "Hello World!";
$bytes = unpack('C*', pack('H*', bin2hex($str)));
foreach($bytes as $byte) {
echo $byte . " ";
}在此示例代码中,我们使用了bin2hex将字符串转换为十六进制字符串,然后使用pack将其打包为二进制数据。使用unpack时,我们使用C类型共享符号解包数据,并使用foreach循环打印字节数组。
输出将是:
72 101 108 108 111 32 87 111 114 108 100 33
综上所述,这是两种在PHP中将字符串转换为字节数组的方法。对于需要执行各种加密/解密操作的开发人员来说,理解这些方法的工作原理是至关重要的。
以上就是php怎么将字符串转为字节数组的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号