Форма: позвольте пользователю выбрать свою страну (раскрывающийся список) и получить валюту (php)

В настоящее время я пишу короткий опрос (html-форму) с использованием php, mysql и jquery. Я хочу, чтобы пользователь выбирал свою страну из раскрывающегося списка, а затем получал нужную валюту (на стороне сервера), поэтому позже я могу спросить, что касается соответствующей валюты.

У меня действительно нет четкого представления о том, как этого добиться. Я знаю, что могу найти обновленный список стран: http://www.iso.org/iso/country_codes/iso_3166_code_lists.htm Я мог бы сделать в php-массив, но потом?

http://snipplr.com/view/36437/php-country-code–to-html-currency-symbol-list/ Кажется приятным кодом, но мне нравится использовать что-то актуальное.

Для меня нет проблемы с использованием базы данных mysql, но проблема заключается в установке плагинов / расширений (хостинг не позволит этого).

Кто-нибудь знает хороший (и, возможно, простой) способ достичь этого?

    Вы можете использовать CURL или file_get_contents () для чтения содержимого из URL-адреса и всегда обновляется.

    Не отвечая на ваш вопрос, но:

    Начиная с PHP5.3, intl стал дефолтом. Он содержит NumberFormatter :: formatCurrency (), который делает то, что пытается связать country_currency (), – только правильно. Если PHP5.3 является жизнеспособным минимальным требованием (см., Что 5.2 устарел и больше не поддерживается), используйте функции intl.

    В Locale :: acceptFromHttp () вы можете проверить заголовки запросов браузера, чтобы выбрать наилучший соответствующий языковой стандарт.

    Список ISO CountryCode все равно будет полезен для ручного <select> на определенном уровне. Но имейте в виду, что это не совсем точно: Германия переводит на de , что может быть недостаточно конкретным, если вы видите de_AT , de_CH , de_DE . Каждый из них может представлять Валюту по-разному. €1,123.23 , 1 123,23 € и так далее. Однако вам все равно нужно знать, какую валюту вы обрабатываете. Таким образом, вам нужен список кодов стран ISO и карта кода страны в валюте.

    PHP Intl's NumberFormatter принимает английский как язык для любой страны. Поэтому просто используйте en_ plus код страны.

     echo (new NumberFormatter('en_DE', NumberFormatter::CURRENCY)) ->getTextAttribute(NumberFormatter::CURRENCY_CODE); // EUR echo (new NumberFormatter('en_RS', NumberFormatter::CURRENCY)) ->getTextAttribute(NumberFormatter::CURRENCY_CODE); // RSD