Annotation of embedaddon/php/ext/intl/tests/locale_parse_locale.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: locale_parse_locale()
3: --SKIPIF--
4: <?php if( !extension_loaded( 'intl' ) ) print 'skip'; ?>
5: --FILE--
6: <?php
7:
8: /*
9: * Try parsing different Locales
10: * with Procedural and Object methods.
11: */
12:
13: function ut_main()
14: {
15: $res_str = '';
16:
17: $locales = array(
18: 'uk-ua_CALIFORNIA@currency=;currency=GRN',
19: 'root',
20: 'uk@currency=EURO',
21: 'Hindi',
22: //Simple language subtag
23: 'de',
24: 'fr',
25: 'ja',
26: 'i-enochian', //(example of a grandfathered tag)
27: //Language subtag plus Script subtag:
28: 'zh-Hant',
29: 'zh-Hans',
30: 'sr-Cyrl',
31: 'sr-Latn',
32: //Language-Script-Region
33: 'zh-Hans-CN',
34: 'sr-Latn-CS',
35: //Language-Variant
36: 'sl-rozaj',
37: 'sl-nedis',
38: //Language-Region-Variant
39: 'de-CH-1901',
40: 'sl-IT-nedis',
41: //Language-Script-Region-Variant
42: 'sl-Latn-IT-nedis',
43: //Language-Region:
44: 'de-DE',
45: 'en-US',
46: 'es-419',
47: //Private use subtags:
48: 'de-CH-x-phonebk',
49: 'az-Arab-x-AZE-derbend',
50: //Extended language subtags
51: 'zh-min',
52: 'zh-min-nan-Hant-CN',
53: //Private use registry values
54: 'qaa-Qaaa-QM-x-southern',
55: 'sr-Latn-QM',
56: 'sr-Qaaa-CS',
57: /*Tags that use extensions (examples ONLY: extensions MUST be defined
58: by revision or update to this document or by RFC): */
59: 'en-US-u-islamCal',
60: 'zh-CN-a-myExt-x-private',
61: 'en-a-myExt-b-another',
62: //Some Invalid Tags:
63: 'de-419-DE',
64: 'a-DE',
65: 'ar-a-aaa-b-bbb-a-ccc'
66: );
67:
68:
69: $res_str = '';
70:
71: foreach( $locales as $locale )
72: {
73: $arr = ut_loc_locale_parse( $locale);
74: $res_str .= "---------------------\n";
75: $res_str .= "$locale:\n";
76: if( $arr){
77: foreach( $arr as $key => $value){
78: $res_str .= "$key : '$value' , ";
79: }
80: $res_str = rtrim($res_str);
81: }
82: else{
83: $res_str .= "No values found from Locale parsing.";
84: }
85: $res_str .= "\n";
86: }
87:
88: $res_str .= "\n";
89: return $res_str;
90:
91: }
92:
93: include_once( 'ut_common.inc' );
94: ut_run();
95:
96: ?>
97: --EXPECTF--
98: ---------------------
99: uk-ua_CALIFORNIA@currency=;currency=GRN:
100: language : 'uk' , region : 'UA' , variant0 : 'CALIFORNIA' ,
101: ---------------------
102: root:
103: language : 'root' ,
104: ---------------------
105: uk@currency=EURO:
106: language : 'uk' ,
107: ---------------------
108: Hindi:
109: language : 'hindi' ,
110: ---------------------
111: de:
112: language : 'de' ,
113: ---------------------
114: fr:
115: language : 'fr' ,
116: ---------------------
117: ja:
118: language : 'ja' ,
119: ---------------------
120: i-enochian:
121: grandfathered : 'i-enochian' ,
122: ---------------------
123: zh-Hant:
124: language : 'zh' , script : 'Hant' ,
125: ---------------------
126: zh-Hans:
127: language : 'zh' , script : 'Hans' ,
128: ---------------------
129: sr-Cyrl:
130: language : 'sr' , script : 'Cyrl' ,
131: ---------------------
132: sr-Latn:
133: language : 'sr' , script : 'Latn' ,
134: ---------------------
135: zh-Hans-CN:
136: language : 'zh' , script : 'Hans' , region : 'CN' ,
137: ---------------------
138: sr-Latn-CS:
139: language : 'sr' , script : 'Latn' , region : 'CS' ,
140: ---------------------
141: sl-rozaj:
142: language : 'sl' ,%r( region : 'ROZAJ' ,)?%r
143: ---------------------
144: sl-nedis:
145: language : 'sl' ,%r( region : 'NEDIS' ,)?%r
146: ---------------------
147: de-CH-1901:
148: language : 'de' , region : 'CH' , variant0 : '1901' ,
149: ---------------------
150: sl-IT-nedis:
151: language : 'sl' , region : 'IT' , variant0 : 'NEDIS' ,
152: ---------------------
153: sl-Latn-IT-nedis:
154: language : 'sl' , script : 'Latn' , region : 'IT' , variant0 : 'NEDIS' ,
155: ---------------------
156: de-DE:
157: language : 'de' , region : 'DE' ,
158: ---------------------
159: en-US:
160: language : 'en' , region : 'US' ,
161: ---------------------
162: es-419:
163: language : 'es' , region : '419' ,
164: ---------------------
165: de-CH-x-phonebk:
166: language : 'de' , region : 'CH' , private0 : 'phonebk' ,
167: ---------------------
168: az-Arab-x-AZE-derbend:
169: language : 'az' , script : 'Arab' , private0 : 'AZE' , private1 : 'derbend' ,
170: ---------------------
171: zh-min:
172: grandfathered : 'zh-min' ,
173: ---------------------
174: zh-min-nan-Hant-CN:
175: language : 'zh' , region : 'MIN' , variant0 : 'NAN' , variant1 : 'HANT' , variant2 : 'CN' ,
176: ---------------------
177: qaa-Qaaa-QM-x-southern:
178: language : 'qaa' , script : 'Qaaa' , region : 'QM' , private0 : 'southern' ,
179: ---------------------
180: sr-Latn-QM:
181: language : 'sr' , script : 'Latn' , region : 'QM' ,
182: ---------------------
183: sr-Qaaa-CS:
184: language : 'sr' , script : 'Qaaa' , region : 'CS' ,
185: ---------------------
186: en-US-u-islamCal:
187: language : 'en' , region : 'US' ,
188: ---------------------
189: zh-CN-a-myExt-x-private:
190: language : 'zh' , region : 'CN' , private0 : 'private' ,
191: ---------------------
192: en-a-myExt-b-another:
193: language : 'en' ,
194: ---------------------
195: de-419-DE:
196: language : 'de' , region : '419' , variant0 : 'DE' ,
197: ---------------------
198: a-DE:
199: No values found from Locale parsing.
200: ---------------------
201: ar-a-aaa-b-bbb-a-ccc:
202: language : 'ar' ,
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>