Autor | Zpráva | ||
---|---|---|---|
Darker Profil |
#1 · Zasláno: 14. 7. 2012, 17:00:49
České znaky výstupu funkce se mi zobrazují nesprávně, a to i s funkcí autoUTF. Co to může být za kódování?
|
||
Mike8748 Profil |
#2 · Zasláno: 14. 7. 2012, 17:03:55
Darker:
záleží na operačním systému serveru a jeho nastavení |
||
Darker Profil |
#3 · Zasláno: 14. 7. 2012, 17:38:11
Mike8748:
„záleží na operačním systému serveru a jeho nastavení“ A to zjistím jak? |
||
Majkl578 Profil |
#4 · Zasláno: 14. 7. 2012, 18:44:33
|
||
Darker Profil |
#5 · Zasláno: 15. 7. 2012, 19:06:54 · Upravil/a: Darker
Majkl578:
Windows NT [Jméno počítače] 6.1 build 7601 (Windows 7 Home Premium Edition Service Pack 1) i586/WINNT To je mi k ničemu. Mezitím jsem to zkoumal a udělal takovýhle skript: header("Content-Type: text/plain; charset=\"utf8\""); $string = shell_exec("ipconfig"); $blocksize = 40; foreach(mb_list_encodings () as $encoding) { echo str_repeat("_",$blocksize-floor(strlen($encoding)/2)).$encoding.str_repeat("_",$blocksize-ceil(strlen($encoding)/2)).PHP_EOL; $s = mb_convert_encoding($string, "UTF-8", $encoding); echo $s; echo PHP_EOL; } Nejlepší výsledek: - CP850 Konfigurace protokolu IP systému Windows Adaptér bezdrátové sítÏ LAN Bezdrátové p²ipojení k síti: Stav média . . . . . . . . . . . : odpojeno P²ípona DNS podle p²ipojení . . . : U názvu souborů: - ISO-8859-2 ěčřýáíéúó.txt Ale ale, zdá se že tady je chyba u mě. Zkopíroval jsem jiný text, než jaký se teď objevil v odeslaném příspěvku... |
||
Keeehi Profil |
#6 · Zasláno: 15. 7. 2012, 19:29:31
<?php header("Content-Type: text/plain; charset=\"UTF-8\""); preg_match('~\d+~',shell_exec("chcp"),$match); $string = shell_exec("ipconfig"); echo iconv("CP$match[0]", "UTF-8", $string); Jinak u mě je defaultní kódování CP852. |
||
Majkl578 Profil |
#7 · Zasláno: 15. 7. 2012, 21:02:28
Darker:
„To je mi k ničemu.“ A zkoušel jsi tu funkci volat s parametrem 's' ? Defaultní je totiž 'a' , což je kompletní uname. Stačí číst dokumentaci a ne slepě kopírovat.
Example #1 je také poměrně výmluvný. „shell_exec("ipconfig")“ ipconfig na Linuxu neexistuje. Keeehi: „shell_exec("chcp")“ chcp na Linuxu neexistuje. |
||
Keeehi Profil |
#8 · Zasláno: 16. 7. 2012, 00:49:34
Majkl578:
Řekl bych, že to je snad každému jasné, když jsou to jiné operační systémy. |
||
Darker Profil |
#9 · Zasláno: 16. 7. 2012, 22:38:21
Majkl578:
„ipconfig na Linuxu neexistuje.“ „chcp na Linuxu neexistuje.“ Díky konstantě PHP_OS pro mě určitě nebude problém si nejdřív ověřit, zda PHP běží pod windows. |
||
Časová prodleva: 11 let
|
0