locale_get_script.phpt 2.6 KB

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