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