Annotation of embedaddon/php/ext/mbstring/tests/mb_convert_encoding.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: mb_convert_encoding()
        !             3: --SKIPIF--
        !             4: <?php extension_loaded('mbstring') or die('skip mbstring not available'); ?>
        !             5: --INI--
        !             6: output_handler=
        !             7: mbstring.language=Japanese
        !             8: --FILE--
        !             9: <?php
        !            10: // TODO: Add more tests
        !            11: //$debug = true; // Uncomment this line to view error/warning/notice message in *.out file
        !            12: ini_set('include_path', dirname(__FILE__));
        !            13: include_once('common.inc');
        !            14: 
        !            15: // SJIS string (BASE64 encoded)
        !            16: $sjis = base64_decode('k/qWe4zqg2WDTINYg2eCxYK3gUIwMTIzNIJUglWCVoJXgliBQg==');
        !            17: // JIS string (BASE64 encoded)
        !            18: $jis = base64_decode('GyRCRnxLXDhsJUYlLSU5JUgkRyQ5ISMbKEIwMTIzNBskQiM1IzYjNyM4IzkhIxsoQg==');
        !            19: // EUC-JP string
        !            20: $euc_jp = '日本語テキストです。0123456789。';
        !            21: 
        !            22: // Test with sigle "form encoding"
        !            23: // Note: For some reason it complains, results are differ. Not reserched.
        !            24: echo "== BASIC TEST ==\n";
        !            25: $s = $sjis;
        !            26: $s = mb_convert_encoding($s, 'EUC-JP', 'SJIS');
        !            27: print("EUC-JP: $s\n"); // EUC-JP
        !            28: 
        !            29: $s = $jis;
        !            30: $s = mb_convert_encoding($s, 'EUC-JP', 'JIS');
        !            31: print("EUC-JP: $s\n"); // EUC-JP
        !            32: 
        !            33: $s = $euc_jp;
        !            34: $s = mb_convert_encoding($s, 'SJIS', 'EUC-JP');
        !            35: print("SJIS: ".base64_encode($s)."\n"); // SJIS
        !            36: 
        !            37: $s = $euc_jp;
        !            38: $s = mb_convert_encoding($s, 'JIS', 'EUC-JP');
        !            39: print("JIS: ".base64_encode($s)."\n"); // JIS
        !            40: 
        !            41: 
        !            42: // Using Encoding List Array 
        !            43: echo "== STRING ENCODING LIST ==\n";
        !            44: 
        !            45: $a = 'JIS,UTF-8,EUC-JP,SJIS';
        !            46: $s = $jis;
        !            47: $s = mb_convert_encoding($s, 'EUC-JP', $a);
        !            48: print("EUC-JP: $s\n"); // EUC-JP
        !            49: 
        !            50: $s = $euc_jp;
        !            51: $s = mb_convert_encoding($s, 'SJIS', $a);
        !            52: print("SJIS: ".base64_encode($s)."\n");  // SJIS
        !            53: 
        !            54: $s = $euc_jp;
        !            55: $s = mb_convert_encoding($s, 'JIS', $a);
        !            56: print("JIS: ".base64_encode($s)."\n"); // JIS
        !            57: 
        !            58: 
        !            59: // Using Encoding List Array 
        !            60: echo "== ARRAY ENCODING LIST ==\n";
        !            61: 
        !            62: $a = array(0=>'JIS', 1=>'UTF-8', 2=>'EUC-JP', 3=>'SJIS');
        !            63: $s = $jis;
        !            64: $s = mb_convert_encoding($s, 'EUC-JP', $a);
        !            65: print("EUC-JP: $s\n"); // EUC-JP
        !            66: 
        !            67: $s = $euc_jp;
        !            68: $s = mb_convert_encoding($s, 'SJIS', $a);
        !            69: print("SJIS: ".base64_encode($s)."\n");  // SJIS
        !            70: 
        !            71: $s = $euc_jp;
        !            72: $s = mb_convert_encoding($s, 'JIS', $a);
        !            73: print("JIS: ".base64_encode($s)."\n"); // JIS
        !            74: 
        !            75: 
        !            76: // Using Detect Order 
        !            77: echo "== DETECT ORDER ==\n";
        !            78: 
        !            79: $s = $jis;
        !            80: $s = mb_convert_encoding($s, 'EUC-JP', 'auto');
        !            81: print("EUC-JP: $s\n"); // EUC-JP
        !            82: 
        !            83: $s = $euc_jp;
        !            84: $s = mb_convert_encoding($s, 'SJIS', 'auto');
        !            85: print("SJIS: ".base64_encode($s)."\n");  // SJIS
        !            86: 
        !            87: $s = $euc_jp;
        !            88: $s = mb_convert_encoding($s, 'JIS', 'auto');
        !            89: print("JIS: ".base64_encode($s)."\n"); // JIS
        !            90: 
        !            91: 
        !            92: // Invalid(?) Parameters
        !            93: echo "== INVALID PARAMETER ==\n";
        !            94: 
        !            95: $s = mb_convert_encoding(1234, 'EUC-JP');
        !            96: print("INT: $s\n"); // EUC-JP
        !            97: 
        !            98: $s = mb_convert_encoding('', 'EUC-JP');
        !            99: print("EUC-JP: $s\n");  // SJIS
        !           100: 
        !           101: $s = $euc_jp;
        !           102: $s = mb_convert_encoding($s, 'BAD');
        !           103: print("BAD: $s\n"); // BAD
        !           104: 
        !           105: $s = $euc_jp;
        !           106: $s = mb_convert_encoding($s);
        !           107: print("MP: $s\n"); // Missing parameter
        !           108: 
        !           109: 
        !           110: ?>
        !           111: 
        !           112: --EXPECT--
        !           113: == BASIC TEST ==
        !           114: EUC-JP: 日本語テキストです。0123456789。
        !           115: EUC-JP: 日本語テキストです。0123456789。
        !           116: SJIS: k/qWe4zqg2WDTINYg2eCxYK3gUIwMTIzNIJUglWCVoJXgliBQg==
        !           117: JIS: GyRCRnxLXDhsJUYlLSU5JUgkRyQ5ISMbKEIwMTIzNBskQiM1IzYjNyM4IzkhIxsoQg==
        !           118: == STRING ENCODING LIST ==
        !           119: EUC-JP: 日本語テキストです。0123456789。
        !           120: SJIS: k/qWe4zqg2WDTINYg2eCxYK3gUIwMTIzNIJUglWCVoJXgliBQg==
        !           121: JIS: GyRCRnxLXDhsJUYlLSU5JUgkRyQ5ISMbKEIwMTIzNBskQiM1IzYjNyM4IzkhIxsoQg==
        !           122: == ARRAY ENCODING LIST ==
        !           123: EUC-JP: 日本語テキストです。0123456789。
        !           124: SJIS: k/qWe4zqg2WDTINYg2eCxYK3gUIwMTIzNIJUglWCVoJXgliBQg==
        !           125: JIS: GyRCRnxLXDhsJUYlLSU5JUgkRyQ5ISMbKEIwMTIzNBskQiM1IzYjNyM4IzkhIxsoQg==
        !           126: == DETECT ORDER ==
        !           127: EUC-JP: 日本語テキストです。0123456789。
        !           128: SJIS: k/qWe4zqg2WDTINYg2eCxYK3gUIwMTIzNIJUglWCVoJXgliBQg==
        !           129: JIS: GyRCRnxLXDhsJUYlLSU5JUgkRyQ5ISMbKEIwMTIzNBskQiM1IzYjNyM4IzkhIxsoQg==
        !           130: == INVALID PARAMETER ==
        !           131: INT: 1234
        !           132: EUC-JP: 
        !           133: ERR: Warning
        !           134: BAD: 
        !           135: ERR: Warning
        !           136: MP: 
        !           137: 
        !           138: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>