Beispiel #1
0
<?php

require_once "../autoload.php";
function is($desc, $a, $b)
{
    if ($a === $b) {
        echo '<span style="background-color: green;">&nbsp;Pass&nbsp;</span> ' . $desc . "<br/>\n";
    } else {
        echo '<span style="background-color: red;">&nbsp;Failed&nbsp;</span> ' . $desc . "<br/>\n";
    }
    return $a === $b;
}
$orig = "αšΓ‘šÑőαιν";
is("Encoding::toUTF8() convierte a UTF-8 todos los caracteres que no son ya UTF-8, teniendo en cuenta los que son Windows-1252, pero dejando sin cambios a los que ya son UTF-8", Encoding::toUTF8($orig), "ÑőњÑőÑéí");
$utf8_from_iso = "Β€ΒΒ‚ΒƒΒ„Β…Β†Β‡ΒˆΒ‰ΒŠΒ‹ΒŒΒΒŽΒΒΒ‘Β’Β“Β”Β•Β–Β—Β˜Β™ΒšΒ›ΒœΒΒžΒŸ";
$utf8_from_win = "β‚¬Ββ€šΖ’β€žβ€¦β€ β€‘Λ†β€°Ε β€ΉΕ’ΒΕ½ΒΒβ€˜β€™β€œβ€β€’β€“β€”Λœβ„’Ε‘β€ΊΕ“ΒΕΎΕΈ";
is("Encoding::UTF8FixWin1252Chars() convierte UTF-8 a UTF-8 corrigiendo caracteres especiales de Windows-1252", Encoding::UTF8FixWin1252Chars($utf8_from_iso), $utf8_from_win);
is("Encoding::toLatin1() convierte los UTF-8 a Windows-1252", Encoding::toLatin1($orig), "αšαšαšαιν");
is("Encoding::toLatin1() convierte los UTF-8 con caracteres convertidos desde Windows-1252 a Windows-1252", Encoding::toLatin1($utf8_from_win), "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ");
is("Encoding::toLatin1() convierte los UTF-8 con caracteres convertidos desde ISO8859-1 a Windows-1252", Encoding::toLatin1($utf8_from_iso), "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ");
is("Encoding::toWin1252() convierte los UTF-8 a Windows-1252", Encoding::toWin1252($orig), "αšαšαšαιν");
is("Encoding::toWin1252() convierte los UTF-8 con caracteres convertidos desde Windows-1252 a Windows-1252", Encoding::toWin1252($utf8_from_win), "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ");
is("Encoding::toWin1252() convierte los UTF-8 con caracteres convertidos desde ISO8859-1 a Windows-1252", Encoding::toWin1252($utf8_from_iso), "€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ");
is("Encoding::fixUTF8() corrige UTF-8 convertido repetidamente", Encoding::fixUTF8(utf8_encode(utf8_encode(utf8_encode($orig)))), "ÑőÑőÑőÑéí");