Можете ли вы объяснить, как эта строка кода эквивалентна следующему коду:
<?php
$string = chr(($number >> 6) + 192).chr(($number & 63) + 128);
?>
Его эквивалентном:
if ($number >=128 && $number <=2047){
$byte1 = 192 + (int)($number/64); //= 192 + ($number >> 6)
$byte2 = 128 + ($number % 64); //= 128 + ($number & 63)
$utf = chr($byte1).chr($byte2);
}
, например, введя номер 1989 и производит ߅
Эти коды используются для преобразования объектов UNICODE обратно в исходные символы UTF-8.
Посмотрите UTF -8 в Википедии.Они дают подробное описание того, как это работает. Этот код довольно прост, как только вы понимаете кодировку. – nneonneo
вопрос в том, как (int) ($ number/64) =? ($ number >> 6) –