2014-12-21 4 views
2

나는이 루프가 :팩/언팩 버전이 있습니까?

$encoded = ''; 
while ($number) { 
    $encoded = chr($number & 0xFF) . $encoded; 
    $number = $number >> 8; 
} 
return $encoded; 

을 나는 동등한 pack 또는 그것을위한 unpack 거기 있는지 궁금 해서요.

답변

3

너는 이것을 가변 엔디안 표현 (가장 중요한 바이트를 먼저 의미 함)으로 인코딩하지만 가변 너비가 있습니다.

그래서 바이트를 얻을 수 있습니다 :

pack("N", $number) 

또한 J와 64 비트를 사용할 수 있습니다. 비트 지원은 PHP 5.6.3을 필요로

ltrim(pack("N", $number), chr(0)) 
+0

주 64 것을 :

은 그러나 당신은 또한 (가변 폭) 최고의 널 바이트를 손질 할 필요가있다. – chx

관련 문제