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