1.gpt 4o 回答
在语言代码的表示中,通常使用的是“zh-CN”。这个代码遵循的是 IETF BCP 47 标准,其中:
“zh” 表示中文( Chinese )。 “CN” 表示中国( China )。 因此,正确的表示方法是“zh-CN”。
2.阮一峰: https://www.ruanyifeng.com/blog/2008/02/codes_for_language_names.html
3.rfc 标准: https://www.ietf.org/rfc/rfc4646.txt
类似网友同样的疑惑,里面答案说用 zh_CN
我在 app.locale 中设置 zh-CN dcat-admin 能正确识别为中文,但是 laravel-lang 识别不了。 设置 zh_CN 语言包可以识别 dcat-admin 又无法识别了。 到底哪个才是符合标准的。
又给出了一个不一样的回答...
一样的。但是一般用 zh_cn 。
不是我太闲,是两个团队起了争执,同步数据导致对不齐,A 让 B 改,B 让 A 改
![]() | 1 kenneth104 2024-09-14 13:17:36 +08:00 zh_CN localectl System Locale: LANG=zh_CN.UTF-8 LANGUAGE=zh_CN VC Keymap: n/a X11 Layout: cn X11 Model: pc105 |
![]() | 2 WasteNya 2024-09-14 13:25:17 +08:00 via Android |
![]() | 3 MossFox 2024-09-14 13:26:15 +08:00 有没有 zh 派 |
![]() | 4 fgwmlhdkkkw 2024-09-14 13:27:54 +08:00 via Android scn tcn |
![]() | 5 worldqiuzhi 2024-09-14 13:29:22 +08:00 ![]() 在实现国际化时,如果是系统级别的语言设置(或者说是区域设置),使用 locale=zh_CN 的形式较好。如果是 HTTP/HTML/XML 中,或者是一段文本内容需要定义语言,使用 lang=zh-CN 的形式较好。 但是,从 SEO 的角度考虑,使用 https://xxx.com/zh 这样的形式是最好的。 https://e7868a.com/locale-language-tag |
![]() | 6 wangritian 2024-09-14 13:29:26 +08:00 感觉和 tab vs 4 空格一样 |
![]() | 7 sagaxu 2024-09-14 13:31:06 +08:00 IETF 规定的是 zh-CN ,posix 习惯用 zh_CN(man locale),Java 两种都支持。 争论这个没有意义,抛硬币交给玉帝决定。 |
8 dcsuibian 2024-09-14 13:31:36 +08:00 zh-CN ,因为 html 的 lang 这么写比较标准 不过其实只是我个人更偏好-减号而不是_下划线 |
9 NoOneNoBody 2024-09-14 13:33:10 +08:00 utf-8 or utf_8 or utf8 及大小写 搞得我要写个正则兼容 |
![]() | 10 saranz 2024-09-14 13:35:13 +08:00 不是用 zh-cmn-Hans 么? |
![]() | 11 Kylinsun 2024-09-14 13:44:46 +08:00 |
![]() | 12 ghjh 2024-09-14 13:57:27 +08:00 感觉这个比较看场景,实际用起来用啥的都有,乱死了 比如在大部分 linux 上,一般 locale 是约定类似 zh_CN.UTF-8 的格式。 其他地方在实际用的时候,zh-cn ,zh-hans ,zh-Hans ,zh_TW 也都有。 感觉对于 OP 的情况,约定语言代码和国家代码都用 iso 标准应该没问题。至于下划线和横线,看谁拳头硬吧,真做解析最好还是两种都兼容) |
13 leaveeel 2024-09-14 14:27:36 +08:00 国际企业中文域名都是 zh-CN ,但是双击选词 zh_CN 可以全部选中,-会截断,包括其他的命名非强制我都喜欢用下划线 |
![]() | 14 FengMubai 2024-09-14 14:33:32 +08:00 用 chs |
![]() | 15 027creed 2024-09-14 14:37:27 +08:00 |
![]() | 16 atpex 2024-09-14 14:44:06 +08:00 |
![]() | 17 marcong95 2024-09-14 14:50:27 +08:00 那就直接 zh ,毕竟事实上其实也没谁真正针对 CN/HK/MO/TW/SG/MY 做本地化。最多也就是区分个简繁体,区分简繁体其实更加应该是 zh-Hans 和 zh-Hant 。 |
![]() | 18 banricho 2024-09-14 15:07:38 +08:00 一般跟着所用的 i18n 的库走 哈哈哈 |
![]() | 19 Tink PRO zh_CN |
20 hefish 2024-09-14 15:55:42 +08:00 对呀对呀!……回字有四样写法,你知道么? |
21 cslive 2024-09-14 16:04:13 +08:00 chs |
![]() | 22 dandycheung 2024-09-14 17:48:08 +08:00 via Android 这种东西是有章可循的。-,也即减号,或者叫连字符,是带有语义的,在此场景下优选才合理;而 _,即下划线,大部分情况是用于字面文本必要时的串接。 |
![]() | 23 ztm0929 2024-09-15 10:14:25 +08:00 via iPhone ![]() @WasteNya 这个恐怕无法作为判断依据,这里的 zh-cn 本质上是一个文件夹,连字符多用于文件夹命名,下划线多用于变量命名;而且连字符有利于 SEO 索引; 所以靠域名判断 zh-cn 还是 zh_CN 为标准恐怕不太准确。 |
![]() | 24 Niphor 2024-09-18 13:16:39 +08:00 不同地方用不同的,怎么可能统一 |