检测PHP上的操作系统正在运行

RAM*_*Me0 0 php locale

我正在处理当前项目的问题,我需要一些帮助:

  1. 功能strtoupper(),mb_strtoupper()等不工作
  2. 我需要设置正确的语言环境才能使它们正常工作
  3. 为此我需要知道PHP上的操作系统正在运行,因为对于Windows正确的命令是setlocale(LC_ALL, "rus");或者setlocale(LC_ALL, "Russian_Russia.1251");对于其他人(我不知道所有其他人是否)setlocale(LC_ALL, 'ru_RU');

但是我找到的所有操作系统检测方法都使用strupper()/ strtolower()检测操作系统......所以现在我有些困惑.我该怎么办.如何检测OS ...

顺便说一句,性能是至关重要的,如果有人知道检测操作系统的好方法和设置正确的语言环境,那就太棒了!

dec*_*eze 5

setlocale支持传递多个语言环境,它将选择第一个可用的语言环境.所以:

setlocale(LC_ALL, 'rus', 'Russian_Russia.1251', 'ru_RU');
Run Code Online (Sandbox Code Playgroud)

这可以跨平台工作.