PHP создает строку Unicode?

Учитывая десятичное или шестнадцатеричное число Unicode для символа, который должен выводиться из сценария PHP CLI, как PHP может его сгенерировать? Функция chr () , похоже, не генерирует правильный вывод. Вот мой тестовый сценарий, используя символ разрыва раздела U + 00A7 (A7 в шестнадцатеричном формате, 167 в десятичном, должен быть представлен как C2 A7 в UTF-8) в качестве теста:

<?php
echo "Section sign: ".chr(167)."\n"; // Using CHR function
echo "Section sign: ".chr(0xA7)."\n";
echo "Section sign: ".pack("c", 0xA7)."\n"; // Using pack function?
echo "Section sign: §\n"; // Copy and paste of the symbol into source code

Вывод, который я получаю (через сеанс SSH на сервер):

Section sign: ?
Section sign: ?
Section sign: ?
Section sign: §

Итак, это доказывает, что в используемом мной терминальном шрифте есть символ разрыва раздела, и SSH-соединение успешно отправляет его, но chr () не создает его должным образом, когда построив его из кодового номера.

Если все, что у меня есть, это кодовый номер, а не вариант копирования / вставки, какие варианты у меня есть?

7
задан MidnightLightning 13 September 2010 в 21:24
поделиться