3v4l.org

run code in 300+ PHP versions simultaneously
<?php function getListFromLocales(): array { return array_filter(ResourceBundle::getLocales(''), function ($value) { return strpos($value, '_') === false; }); } function getListFromLanguages(): array { $resourceBundle = new ResourceBundle('en', 'ICUDATA-lang', false); $languagesBundle = $resourceBundle['Languages']; $languages = []; foreach ($languagesBundle as $languageCode => $languageName) { $languages[] = $languageCode; } return $languages; } function languageForEndUser($language): string { return Locale::getDisplayLanguage($language, $language) . ' (' . Locale::getDisplayLanguage($language) . ')'; } $list1 = getListFromLocales(); $list2 = getListFromLanguages(); echo 'languages in list1: ' . count($list1) . PHP_EOL; echo 'languages in list2: ' . count($list2) . PHP_EOL; echo 'languages that exists in list1, but not in list2: ' . count(array_diff($list1, $list2)) . PHP_EOL; echo 'languages that exists in list2, but not in list1: ' . count(array_diff($list2, $list1)) . PHP_EOL; Locale::setDefault('fr'); // Assume end-user speaks french echo 'examples of language for end-user: ' . PHP_EOL; echo ' - ' . languageForEndUser('en') . PHP_EOL; echo ' - ' . languageForEndUser('fr') . PHP_EOL; echo ' - ' . languageForEndUser('ko') . PHP_EOL;
Output for git.master_jit, git.master, rfc.property-hooks
languages in list1: 203 languages in list2: 619 languages that exists in list1, but not in list2: 0 languages that exists in list2, but not in list1: 416 examples of language for end-user: - English (anglais) - français (français) - 한국어 (coréen)

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
56.74 ms | 402 KiB | 8 Q