1--TEST-- 2locale_get_script() 3--SKIPIF-- 4<?php if( !extension_loaded( 'intl' ) ) print 'skip'; ?> 5--FILE-- 6<?php 7 8/* 9 * Try getting the prmary language for different locales 10 * with Procedural and Object methods. 11 */ 12 13function ut_main() 14{ 15 16 $locales = array( 17 'uk-ua_CALIFORNIA@currency=;currency=GRN', 18 'root', 19 'uk@currency=EURO', 20 'Hindi', 21//Simple language subtag 22 'de', 23 'fr', 24 'ja', 25 'i-enochian', //(example of a grandfathered tag) 26//Language subtag plus Script subtag: 27 'zh-Hant', 28 'zh-Hans', 29 'sr-Cyrl', 30 'sr-Latn', 31//Language-Script-Region 32 'zh-Hans-CN', 33 'sr-Latn-CS', 34//Language-Variant 35 'sl-rozaj', 36 'sl-nedis', 37//Language-Region-Variant 38 'de-CH-1901', 39 'sl-IT-nedis', 40//Language-Script-Region-Variant 41 'sl-Latn-IT-nedis', 42//Language-Region: 43 'de-DE', 44 'en-US', 45 'es-419', 46//Private use subtags: 47 'de-CH-x-phonebk', 48 'az-Arab-x-AZE-derbend', 49//Extended language subtags 50 'zh-min', 51 'zh-min-nan-Hant-CN', 52//Private use registry values 53 'x-whatever', 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 $res_str = ''; 69 70 foreach( $locales as $locale ) 71 { 72 $scr = ut_loc_get_script( $locale); 73 $res_str .= "$locale: script='$scr'"; 74 $res_str .= "\n"; 75 } 76 77 return $res_str; 78 79} 80 81include_once( 'ut_common.inc' ); 82ut_run(); 83 84?> 85--EXPECT-- 86uk-ua_CALIFORNIA@currency=;currency=GRN: script='' 87root: script='' 88uk@currency=EURO: script='' 89Hindi: script='' 90de: script='' 91fr: script='' 92ja: script='' 93i-enochian: script='' 94zh-Hant: script='Hant' 95zh-Hans: script='Hans' 96sr-Cyrl: script='Cyrl' 97sr-Latn: script='Latn' 98zh-Hans-CN: script='Hans' 99sr-Latn-CS: script='Latn' 100sl-rozaj: script='' 101sl-nedis: script='' 102de-CH-1901: script='' 103sl-IT-nedis: script='' 104sl-Latn-IT-nedis: script='Latn' 105de-DE: script='' 106en-US: script='' 107es-419: script='' 108de-CH-x-phonebk: script='' 109az-Arab-x-AZE-derbend: script='Arab' 110zh-min: script='' 111zh-min-nan-Hant-CN: script='' 112x-whatever: script='' 113qaa-Qaaa-QM-x-southern: script='Qaaa' 114sr-Latn-QM: script='Latn' 115sr-Qaaa-CS: script='Qaaa' 116en-US-u-islamCal: script='' 117zh-CN-a-myExt-x-private: script='' 118en-a-myExt-b-another: script='' 119de-419-DE: script='' 120a-DE: script='' 121ar-a-aaa-b-bbb-a-ccc: script='' 122