나는 이것을 사용하는 생각을했다 :PHP에서 base64에서 16 진수로 변환하는 방법?
<?php
$string1 = 'V2h5IEkgY2FuJ3QgZG8gdGhpcyEhISEh';
echo base64_decode($string1);
?>
이 예제의 출력은 항상 18 자이어야한다! 그러나 때때로이 출력은 18보다 작습니다.
24 (base64 문자)에 6을 곱한 값 (base64 문자 당 비트 수)은 144 (비트)를 8로 나눈 값 (ASCII 문자 당 비트 수)이 18 ASCII 문자와 같습니다.
문제는 출력이 일반 텍스트로 표시된다는 것입니다. 일부 문자에는 "텍스트 표현"이 없기 때문에 데이터가 손실됩니다. 다음 테스트에서는 출력이 보이지 않는 41 개의 ASCII 문자가 있음을 보여줍니다.
<?php
for ($i = 0; $i <= 255; $i++) {
$string2 = chr($i);
echo $i . " = " . $string2 . "<br>";
}
?>
내 계획은 base64 문자열을 디코딩하고 ASCII 출력을 16 진수로 변환하는 것이 었습니다. 41 자로 인해 불가능합니다.
또한 base_convert
을 시도했지만 기본 64 지원이 없습니다.
'BIN2HEX()가'당신이에 관심이있을 수있는 내장 함수의 – mario
가능한 복제 [변환은 base64'd SHA1은 해시를 16 진수에 해시 (HTTP :. // 유래. com/questions/2914504/convert-base64d-sha1-hashes-to-hex-hashes) – zanderwar
참조 http://stackoverflow.com/questions/2914504/convert-base64d-sha1-hashes-to-hex-hashes – zanderwar