Попытка получить символ евро с помощью chr (128)

Я ожидал этот код:

define('EURO_SIMBOLO', chr(128));
$euro = EURO_SIMBOLO;
var_dump($euro);

чтобы показать символ , но это не так. Почему это происходит?

Ответ 1

Если вы хотите использовать Unicode, UTF-8 более конкретно, который я предпочитаю из-за его гибкости, вы можете вывести знак евро, используя:

echo "\xE2\x82\xAc"; // 3 bytes-long multibyte character

Ответ 2

Это будет работать, только если вы используете 125x кодовую страницу. Дело в том, что символ евро не включен в расширенные ASCII-символы all (введен в ISO/IEC 8859-15), однако он имеет де-факто символ Юникода.

Если это просто для отображения в браузере, попробуйте использовать '€' или '€'

Ответ 3

Вместо € (alt + 0128)

переключите свой код евро на

€

Ответ 4

Если вы используете такой набор символов с символом евро, вы, скорее всего, используете iso-8859-15, в котором символ '€' определен в позиции 164. Таким образом, у вас может быть больше удачи, если вы замените 128 на 164, хотя это не поможет вам в средах utf-8, в которых предыдущий ответ может быть более подходящим.

Ответ 5

В коде CP1252 код € имеет код 128; В ISO-8859-15 код равен 164; Macintosh Roman - 219;

Знак евро является частью ASCII. Посмотрите, что http://www.ascii-code.com/