为了账号安全,请及时绑定邮箱和手机立即绑定

php中的字符串到字节数组

php中的字符串到字节数组

PHP
温温酱 2019-08-28 09:33:44
php中的字符串到字节数组如何从包含数字,字母等的字符串中获取字节数组?如果您熟悉Java,我正在寻找getBytes()方法的相同功能。我尝试了一个像这样的片段:for($i = 0; $i < strlen($msg); $i++){     $data.=ord($msg[$i]);         //or $data[]=ord($msg[$1]); }但没有成功,所以任何形式的帮助将不胜感激。PS:为什么我需要这个!?好吧,我需要通过fputs()将一个字节数组发送到用Java编写的服务器...
查看完整描述

3 回答

?
青春有我

TA贡献1784条经验 获得超8个赞

我猜你byte[]在C#中期望字节数组。它与Sparr的解决方案相同,但不是HEX,而是预期每种方式的int呈现方式(范围从0到255)char。你可以这样做:


$byte_array = unpack('C*', 'The quick fox jumped over the lazy brown dog');

var_dump($byte_array);  // $byte_array should be int[] which can be converted

                        // to byte[] in C# since values are range of 0 - 255

通过使用,var_dump您可以看到元素是int(不是string)。


   array(44) {  [1]=>  int(84)  [2]=>  int(104) [3]=>  int(101) [4]=>  int(32)

[5]=> int(113)  [6]=>  int(117) [7]=>  int(105) [8]=>  int(99)  [9]=>  int(107)

[10]=> int(32)  [11]=> int(102) [12]=> int(111) [13]=> int(120) [14]=> int(32)

[15]=> int(106) [16]=> int(117) [17]=> int(109) [18]=> int(112) [19]=> int(101)

[20]=> int(100) [21]=> int(32)  [22]=> int(111) [23]=> int(118) [24]=> int(101)

[25]=> int(114) [26]=> int(32)  [27]=> int(116) [28]=> int(104) [29]=> int(101)

[30]=> int(32)  [31]=> int(108) [32]=> int(97)  [33]=> int(122) [34]=> int(121)

[35]=> int(32)  [36]=> int(98)  [37]=> int(114) [38]=> int(111) [39]=> int(119)

[40]=> int(110) [41]=> int(32)  [42]=> int(100) [43]=> int(111) [44]=> int(103) }

注意:输出数组是基于1的索引(正如在注释中指出的那样)


查看完整回答
反对 回复 2019-08-28
?
交互式爱情

TA贡献1712条经验 获得超3个赞

print_r(unpack("H*","The quick fox jumped over the lazy brown dog"))Array ( [1] => 54686520717569636b20666f78206a756d706564206f76657220746865206c617a792062726f776e20646f67 )

T = 0x54,h = 0x68,......

如有必要,可以将结果拆分为双十六进制字符块。


查看完整回答
反对 回复 2019-08-28
?
海绵宝宝撒

TA贡献1809条经验 获得超8个赞

你可以试试这个:

$in_str = 'this is a test';$hex_ary = array();foreach (str_split($in_str) as $chr) {
    $hex_ary[] = sprintf("%02X", ord($chr));}echo implode(' ',$hex_ary);


查看完整回答
反对 回复 2019-08-28
  • 3 回答
  • 0 关注
  • 632 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信