CMD.exe funciona en diferentes páginas de códigos que PHP. Por cierto, también es una página de códigos diferente a la página de códigos predeterminada de Windows. Esto es por compatibilidad con programas anteriores de MS-DOS. En mi país, Windows usa Windows-1250 y cmd.exe usa DOS Latin2. Supongo que en el Reino Unido esto sería Windows-1252 y DOS Latin1 respectivamente.
Para obtener los mismos resultados, debe usar la misma página de códigos en PHP y en cmd.exe. Compruebe qué página de códigos utiliza PHP y establezca cmd.exe en la misma página de códigos. Para hacer esto, use el siguiente comando: mode con sp select=<codepagenumber>
o chcp <codepagenumber>
. Esto cambiará la página de códigos solo para la instancia actual de cmd.exe.
Aquí es una breve lista de algunas páginas de códigos típicos y sus números:
DOS Latin1 850
DOS Latin2 852
Windows-1250 1250
Windows-1252 1252
UTF-8 65001
ISO-8859-1 28591
ISO-8859-2 28592
Como @Christophe Weis señaló en los comentarios, puede buscar los identificadores de otras páginas de códigos en Code page identifiers página.
Bueno, el eco parece ser más una función de copiar/pegar. No estoy seguro acerca de PHP ... – Coffee