1

16 進文字のような ASCII 数字 (文字ではない) を書かなければなりません。1 バイトには 2 桁 (半バイトごとに 1 つ) が含まれている必要があります。これが、ファイルに書き込むために '0665879955443322' を持っている文字列であり、この結果が 06 65 87 99 55 44 33 22 (8 バイト) であるとします。(パック形式のように)似たようなことをするこの例を試します

php

$a=0x06;
$b=0x65;
$c=0x87;
$txt = pack('CCC',$a,$b,$c) . "\x0A"; # Hex output is: 06 58 0A
$txt = "\x06" . "\x58" . "\x0C" . "\x0A";

# write to file to view with exadecimal editor
$bytes = file_put_contents('test',$txt);
echo "$bytes written<br>";

-----------

今、うまくいかない私のコード!

$a="06";
$b="65";
$c="87";

//$txt = "\x06" . "\x58" . "\x0C" . "\x0A"; // this works
$txt = "\x" . $a" . "\x" . $b . "\" . $c . "\x0A";  // this not work !
$bytes = file_put_contents('test',$txt);
echo "$bytes written<br>";

---------

$a $b $c をバイトのように転送する方法は?

色々ありがとう

4

0 に答える 0