Моя локальная среда: debian + lxde (рабочий стол).
system--lxterminal
войти в терминал.
alias 测试="echo '你好'"测试
你好
Тип php a
в lxterminal войдите в интерактивную оболочку php.
php -a
Interactive mode enabled
php > echo "测试";
测试
Сделайте вывод: китайский иероглиф можно набирать и показывать в интерактивной оболочке lxterminal и php.
Войдите в мой VPS с помощью SSH.
[root@localhost ~]# php72 -i |grep Readline
Readline Support => enabled
Readline library => EditLine wrapper
alias 测试="echo '你好'"测试
你好
Войдите в интерактивную оболочку php, китайский символ может быть напечатан, но не может быть введен в интерактивную оболочку php, вы можете увидеть показ китайских символов на интерфейсе китайского ввода, интерактивная оболочка php в моем удаленном vps не может принять это, почему?
Это динамические графики ниже, показывает, что произошло в моем VPS.
Ваш язык может быть неполным.
Попробуй это:
sudo locale-gen zh_CN.UTF-8
затем перезагрузите
Прежде всего; PHP не является интерактивной оболочкой, как Python, он просто действует так. Но, я думаю, если вы сначала используете этот код, он будет запущен в вашей кодировке;
mb_internal_encoding("UTF-8");
а также вы можете использовать;
declare(encoding="utf-8");
но он не будет работать в режиме CLI.
…просто попробуй.
Это может быть из-за версии php.
Вы должны обновить версии.
sudo apt-get установить ibus-пиньинь
sudo apt-get установить ibus-sunpinyin
перезапуск ibus