locale_get_region.phpt 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. --TEST--
  2. locale_get_region()
  3. --EXTENSIONS--
  4. intl
  5. --FILE--
  6. <?php
  7. /*
  8. * Try getting the region for different locales
  9. * with Procedural and Object methods.
  10. */
  11. function ut_main()
  12. {
  13. $res_str = '';
  14. $locales = array(
  15. 'uk-ua_CALIFORNIA@currency=;currency=GRN',
  16. 'root',
  17. 'uk@currency=EURO',
  18. 'Hindi',
  19. //Simple language subtag
  20. 'de',
  21. 'fr',
  22. 'ja',
  23. 'i-enochian', //(example of a grandfathered tag)
  24. //Language subtag plus Script subtag:
  25. 'zh-Hant',
  26. 'zh-Hans',
  27. 'sr-Cyrl',
  28. 'sr-Latn',
  29. //Language-Script-Region
  30. 'zh-Hans-CN',
  31. 'sr-Latn-CS',
  32. //Language-Variant
  33. 'sl-rozaj',
  34. 'sl-nedis',
  35. //Language-Region-Variant
  36. 'de-CH-1901',
  37. 'sl-IT-nedis',
  38. //Language-Script-Region-Variant
  39. 'sl-Latn-IT-nedis',
  40. //Language-Region:
  41. 'de-DE',
  42. 'en-US',
  43. 'es-419',
  44. //Private use subtags:
  45. 'de-CH-x-phonebk',
  46. 'az-Arab-x-AZE-derbend',
  47. //Extended language subtags
  48. 'zh-min',
  49. 'zh-min-nan-Hant-CN',
  50. //Private use registry values
  51. 'x-whatever',
  52. 'qaa-Qaaa-QM-x-southern',
  53. 'sr-Latn-QM',
  54. 'sr-Qaaa-CS',
  55. /*Tags that use extensions (examples ONLY: extensions MUST be defined
  56. by revision or update to this document or by RFC): */
  57. 'en-US-u-islamCal',
  58. 'zh-CN-a-myExt-x-private',
  59. 'en-a-myExt-b-another',
  60. //Some Invalid Tags:
  61. 'de-419-DE',
  62. 'a-DE',
  63. 'ar-a-aaa-b-bbb-a-ccc'
  64. );
  65. $res_str = '';
  66. foreach( $locales as $locale )
  67. {
  68. $scr = ut_loc_get_region( $locale);
  69. $res_str .= "$locale: region='$scr'";
  70. $res_str .= "\n";
  71. }
  72. return $res_str;
  73. }
  74. include_once( 'ut_common.inc' );
  75. ut_run();
  76. ?>
  77. --EXPECTF--
  78. uk-ua_CALIFORNIA@currency=;currency=GRN: region='UA'
  79. root: region=''
  80. uk@currency=EURO: region=''
  81. Hindi: region=''
  82. de: region=''
  83. fr: region=''
  84. ja: region=''
  85. i-enochian: region=''
  86. zh-Hant: region=''
  87. zh-Hans: region=''
  88. sr-Cyrl: region=''
  89. sr-Latn: region=''
  90. zh-Hans-CN: region='CN'
  91. sr-Latn-CS: region='CS'
  92. sl-rozaj: region='%r(ROZAJ)?%r'
  93. sl-nedis: region='%r(NEDIS)?%r'
  94. de-CH-1901: region='CH'
  95. sl-IT-nedis: region='IT'
  96. sl-Latn-IT-nedis: region='IT'
  97. de-DE: region='DE'
  98. en-US: region='US'
  99. es-419: region='419'
  100. de-CH-x-phonebk: region='CH'
  101. az-Arab-x-AZE-derbend: region='%r(X)?%r'
  102. zh-min: region=''
  103. zh-min-nan-Hant-CN: region='MIN'
  104. x-whatever: region=''
  105. qaa-Qaaa-QM-x-southern: region='QM'
  106. sr-Latn-QM: region='QM'
  107. sr-Qaaa-CS: region='CS'
  108. en-US-u-islamCal: region='US'
  109. zh-CN-a-myExt-x-private: region='CN'
  110. en-a-myExt-b-another: region='%r(A)?%r'
  111. de-419-DE: region='419'
  112. a-DE: region='DE'
  113. ar-a-aaa-b-bbb-a-ccc: region='%r(A)?%r'