[Image] Четверг, 19.12.2024, 03:10 [Image]
SEO, технологии, игры, IT новости
[Image] Главная Регистрация Вход [Image]
[Image] Приветствую Вас, Гость · RSS [Image]
Меню сайта

Форма входа
 Блог
Главная » 2010 » Декабрь » 18 » Строки и региональные стандарты
22:25
Строки и региональные стандарты

Поскольку люди живут в разных странах, часто бывает необходимо форматировать строки в соответствии с различными настройками. Пример этого был приведен в предыдущем разделе, но поддержка такого типа функциональности является намного более универсальной. Многие операционные системы, под управлением которых функционирует РНР, предоставляют множество возможностей автоматического и прозрачного управления локальными настройками строковых значений.
В самом деле, единая для всей системы установка может оказаться далеко не тем решением, которое вы ищете, особенно если занимаетесь созданием Web-сайта, предназначенного для посетителей из разных стран. Поэтому РНР предлагает функцию=setlocale(), которая может применяться для управления поведением некоторых функций форматирования строк:
bool setlocale ($category, $locale[, Slocale...]);
Параметр $ category определяет, какой именно аспект локальной функциональности управляется вызовом setlocale (), как показано в табл. 1.5.

Таблица 1.5. Опции setlocale ()
Опция Значение
LC_ALL Модифицировать все установки.
LC_COLLATE Только сравнение строк.
LC_TYPE Классификация строк (например, разница между заглавными/строчными).
LC_MONETARY Денежные значения.
LC_NUMERIC Числовые значения.
LC_TIME Значения даты/времени.

Параметр $ locale — это имя региональной установки, которая должна быть изменена для класса установок, заданного в $category. В действительности, вы можете указать более одной региональной установки, добавляя новые экземпляры этого параметра. Это удобно, поскольку одни и те же региональные установки могут иметь различные имена, в зависимости от используемой операционной системы.
Возможности тонкой настройки, предлагаемые setlocale () при определении аспектов управления строками, которых они касаются, могут показаться чрезмерными, но со временем оказывается, что они очень удобны. Например, модификация класса LCNUMERIC оказывает влияние на все операции преобразования числовых значений, как на входе, так и на выходе. Это означает, что когда вы принимаете строку извне своего сценария — будь то от пользователя или из базы данных — она должна быть отформатирована в соответствии с региональным стандартом, установленным вызовом setlocale (), либо она не будет правильно распознана системой.
В большинстве случаев вы ограничите манипуляции с региональными установками только до LC_MONETARY, LC_TYPE и LC_COLLATE. Возможно, вы не будете менять LCNUMERIC, кроме как в особых ситуациях, поскольку это затронет способ интерпретации строк при их конвертировании в числа. Поэтому, например, если ваш сервер
базы данных возвращает числовые значения с использованием английской нотации (ххх.хх), а вы имеете LC_NUMERIC, установленной в значение другого регионального стандарта, дробная часть будет проигнорирована.


Категория: Все о PHP | Просмотров: 1362 | Добавил: witkom8382 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Copyright MyCorp © 2024
Категории
Оптимизация сайта [592]
Создание сайтов [355]
Заработать в интернете [508]
Технологии [48]
Полезное [392]
Услуги и сервисы [317]
Автоблог [105]
Скрипты для Ucoz [39]
Движок на сайт [10]
Все о Joomla и Drupal [20]
Все о PHP [91]
Поиск
Пользовательский поиск
Статистика


Онлайн всего: 5
Гостей: 5
Пользователей: 0
Seo сайт, технологии продвижения, мета теги, оптимизация сайтов, новости сео, Скрипты, Ucoz

Рейтинг@Mail.ru