phpstorm centos编码设置指南
小樊
35
2025-11-17 20:27:42
PhpStorm 与 CentOS 编码设置指南
一 目标与原则
全链路统一为 UTF-8(推荐 utf8mb4) ,包括:PhpStorm 文件保存、PHP 运行时、Web 服务器、HTTP 响应头、HTML meta、数据库连接与排序规则。
避免混用 GBK/GB2312 与 UTF-8 ;已有非 UTF-8 文件需先备份再转换。
PHP 输出默认字符集建议设置:在 php.ini 中配置 default_charset = “UTF-8” 。
二 PhpStorm 内部编码设置
全局与项目编码
打开 File > Settings > Editor > File Encodings 。
将 Global Encoding 、Project Encoding 、Default encoding for properties files 均设为 UTF-8 。
勾选 Transparent native-to-ascii conversion (用于 properties 文件可读性与兼容性)。
单个文件编码查看与转换
打开文件,查看窗口右下角或右键 File Encoding ,可执行:
Reload in Another Encoding (以指定编码重新加载,不修改磁盘文件)。
Convert and Save (转换并保存为指定编码)。
界面与日志字体
若出现 IDE 界面或控制台中文方块字,设置支持中文的字体:
File > Settings > Appearance & Behavior > Appearance :勾选 Override default fonts by (not recommended) ,选择如 Microsoft YaHei 、Noto Sans CJK SC 、Source Han Sans SC 等。
File > Settings > Editor > Font :同样选择支持中文的字体。
三 CentOS 系统与终端环境
检查与设置系统 locale
查看可用与当前 locale:
查看可用:locale -a
查看当前:locale
临时设置(当前会话):
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
永久生效(写入用户环境):
写入 ~/.bashrc 或 ~/.bash_profile :
echo ‘export LANG=en_US.UTF-8’ >> ~/.bashrc
echo ‘export LC_ALL=en_US.UTF-8’ >> ~/.bashrc
source ~/.bashrc
如需系统级设置,可编辑 /etc/locale.conf (不同发行版路径可能不同)。
终端与 SSH 客户端
确保终端(如 GNOME Terminal、xterm、tmux、screen)与 SSH 客户端均使用 UTF-8 。
在终端配置中设置字符集为 UTF-8 ,避免使用不支持中文的字体。
四 远程开发与部署场景
远程项目(SFTP/WSL/容器)
在 Tools > Deployment > Configuration 配置 SFTP ,在 Advanced Options 中可设置传输编码相关选项(如文件名编码),确保与服务器一致。
远程文件在 PhpStorm 中同样通过右下角或右键 File Encoding 进行查看与转换,保持与本地/远程统一。
Web 输出链路
Web 服务器默认字符集:
Nginx :在 http/server 块添加 charset utf-8;
Apache :在 httpd.conf 或虚拟主机添加 AddDefaultCharset UTF-8
PHP 脚本建议显式输出头:
header(‘Content-Type: text/html; charset=UTF-8’);
HTML 模板:
数据库(以 MySQL 为例):
库/表/列使用 utf8mb4 ,排序规则 utf8mb4_unicode_ci 。
PHP 连接时指定字符集:
MySQLi:$conn->set_charset(‘utf8mb4’);
PDO:$dsn = “mysql:host=localhost;dbname=db;charset=utf8mb4”;
五 常见问题与排查
已存在文件乱码或编码不一致
在 PhpStorm 中对该文件执行 Reload in Another Encoding 确认原始编码,再 Convert and Save 为 UTF-8 。
批量转换可用命令行 iconv (先备份):
示例:iconv -f GBK -t UTF-8 old.php -o new.php
忽略非法字符:iconv -f GBK -t UTF-8//IGNORE old.php -o new.php
IDE 界面中文显示异常
安装官方 Chinese (Simplified) Language Pack (Help > Check for Updates > Plugins 搜索并安装),重启 IDE;同时确保界面字体支持中文。
终端或日志输出中文乱码
确认 LANG/LC_ALL 为 en_US.UTF-8 或 zh_CN.UTF-8 ,终端与 SSH 客户端均设为 UTF-8 ,并使用支持中文的字体。