Я использую PHP 7.3.4 на моей домашней машине, которая работает на Windows 10 Home Single Language 64-разрядная операционная система .
Я сталкиваюсьоператор ниже Руководство по PHP :
Значения вне допустимого диапазона (0..255) будут побитовыми и будут содержать 255, что эквивалентно следующему алгоритму:
while ($bytevalue < 0) {
$bytevalue += 256; }
$bytevalue %= 256;
Я могу напечатать строку из одного символа для байтового значения, которое находится вне допустимого диапазона, то есть вне (0 ... 255), используя встроенную функцию chr()
.
Но для нескольких значений, таких как chr(-598), chr(-813), chr(-1059),
и т. Д., Отображается символ �
.Почему он не отображает соответствующий символ, специфичный для только что вычисленного байтового значения в соответствии с приведенным выше алгоритмом?
Я также хочу знать, откуда это �
, поскольку его не было ни в одной из ASCCI-совместимых кодировок символов?
Пожалуйста, помогите мне в этом.
Спасибо.