Работа со строками в joomla! 1.5

Одним из основных преимуществ в Joomla! является встроенная многоязычная поддержка. Язык по-умолчанию выбирается в менеджере локализаций, и может быть переключен залогенным пользователем.
Статический класс JText используется для перевода строки на различные языки. JText имеет три метода для перевода строки: _(), sprintf() и printf(). Самый часто используемый метод _(). Этот метод является самым основным, так как он переводит строку.

В данном примере, мы переведем слово Monday (если перевод не найден, то вернется строка Monday):
echo JText::_('Monday');
Метод JText::sprintf() аналогичен PHP-функции sprintf(). Мы передаем одну строку для перевода и любое количество дополнительных параметров, которые нужно включить в перевод строки. Дополнительные параметры переводиться не будут.

В данном примере, если перевод для SAVED_ITEMS является Save %d items. То переводом будет "Сохранено 3 шт".
$value = JText::sprintf('SAVED_ITEMS', 3);
Или мы можем использовать метод JText::printf(). Этот метод аналогичен PHP-функции printf(). Этот метод возвращает длину результирующей строки перевода.

$length = JText::printf('SAVED_ITEMS', 3);
Если мы хотим создать перевод для наших расширений, то нужно создавать ini файлы переводов.

Обработчики UTF-8 строк

Для того чтобы Joomla! в полной мере поддерживать многоязычные требования, Joomla! использует кодировку Unicode или UTF-8 (Unicode Transformation Format-8). Unicode - это набор символов, включающий все известные языки.
В Joomla! нам предоставляется статический класс JString; этого класса позволяет нам выполнять большинство из обычных строковых функций только в кодировке UTF-8.

Этот пример показывает, как мы можем использовать JString, чтобы преобразовать строку в верхний регистр. Заметим, что имя метода совпадает с аналогичной php-функцией:
$string = JString::strtoupper($string);
PHP функция JString метод Описание
strpos strpos Находит первое совпадение строки в строке
substr substr Возвращает часть строки
strtolower strtolower Возвращает строку в нижнем регистре
strtoupper strtoupper Возвращает строку в верхнем регистре
strlen strlen Колличество символов в строке
str_ireplace str_ireplace Возвращает строку, в которой все вхождения search (без учета регистра символов) заменены на replace
str_split str_split Разбивает строку в массив по заданному символу
strcasecmp strcasecmp Сравнивает строки
strcspn strcspn Возвращает длину участка в начале строки, не соответствующего маске
stristr stristr Находит первое совпадение строки в строке (нечуствительно к регистру)
strrev strrev Переворачивает строку задом наперед
strspn strspn Находит самый длинный сегмент строки заключенный в заданные символы
substr_replace substr_replace Производит замену символов в строке
ltrim ltrim Удаляет пробелы слевой части строки
rtrim rtrim Удаляет пробелы с правой части строки
trim trim Удаляет пробелы слева и справа
ucfirst ucfirst Переводит первый символ в верхний регистр
ucwords ucwords Переводит первый символ каждого слова в верхний регистр.
transcode Переводит строку из одной кодировки в другую. Требует iconv




Работа со строками в joomla! 1.5 - Генератор расширений Joomla и многое другое на нашем сайте посвященном работе расширений, компонентов, модулей, плагинов для линейки Joomla. Отправляйте ссылку на страницу своим друзьям и в социальные сети воспользовавшись графическими иконками выше.

Блог

Календарь приёма объявлений

Небольшой пример из повседневной практики. Организация меняет реквизиты, и они вступят в силу через  пару недель. На сайте идет приём объявлений и объявления принимаются на несколько месяцев в...

Дырка в com_content

Сегодня у товарища, сайт которого находится на старой  Joomla 1.0.3, была сильная нагрузка на сервере, просматривая логи обнаружил не вежливый запрос такого порядка: http://сайт/index2...

Лечим вирус на сайте

  Первоначальный осмотр сайта обнаружил, что у клиента закрыт доступ по фтп, что сузило круг подозреваемых уязвимостей, стало быть отверстие в какомто скрипте движка joomla. Касперский яро...

Troj/JSRedir-MH

Снова грянул гром зарежения сайтов новым вирусом  Troj/JSRedir-MH.  И так в коротко по вирусу Troj/JSRedir-MH. Вирус или троян куда интереснее чем свои предшествиники, тепер...

Доработка расширения для рассылки Send Email JK

Сегодня поделюсь немного интересной информацией для владельцев сайтов собранных ан joomla.  Рано и поздно возникает задача подписки и рассылки информации с сайта, это может быть разная постановка зада...

Привет Ie 10 регулярка

И вот и мне пришлось столкнулся с проблемами перехода на win 8 в придачу с ie 10, некоторых постоянных пользователей моих сайтов. На многих сайтах  имеющих раздел по приёму объявлений, использ...

Kunena заменяем ссылку на профиль пользователя

Всем привет, снова снова кунена, получил задание на допиливание популярного форума Kunena, сегодня потребовалось поменять ссылку на профиль пользователя. Это связано с тем, что на сайте стоит социа...

Работает на Kunena - зачем на каждой странице?

  Все у кого стоит форум kunena мешает надпись с двумя ссылкам внизу форума "Работает на Kunena". Сея надпись висит на каждой странице форма, а также страница разработчиков содержит множество вн...

Kunena избавимся от лишних quote

Для тех кто действительно делает сайт для людей, моя следующая заметка. Расскажу вам, как избавиться от лишних quote в постах на форуме kunena. У меня несколько тематических сайтов с нормальной посеща...

Kunena решаем проблему с пропажей аватаров

Так и вот мы обновись до последней версии кунены, сразу видно компонент внутри сильно изменился, и вот незадача у некоторых пользователей пропали аватары, физически они есть но неотображаются. ...

Джомлавикам

Обработка параметров расширений joomla

При разработке расширений для CMS Joomla, таких как плагины, модули, компоненты или шаблоны, часто возникает необходимость получить параметры разрабатываемого или любого другого расширения. В этой ...

Кunena крамсаем шаблон

1. В папке \components\com_kunena\template\ваш_шаблон\ находим файл template.xml и вставляем в него такой кусок (чтобы была возможность выбора показывать это поле или нет): <param name="l...

Подключить свои классы и методы в Joomla?

Иногда случается, что набор собственных функций или библиотек нужно подключить в Joomla. Но иногда подключить их нужно так, чтобы они присутсвовали во всей системе, вне зависимо...

3 новых полезных класса в Joomla 2.5

В платформе Joomla 11.3 разработчики добавлил несколько полезных новых классов для разработчиков. Рассмотрю некоторый из них - JGrid (для построения HTML таблиц), JWebClient (для получения информац...

Репозиторий файлов на Joomla средствами Apache

Создадим две вложенные директории /files/files в корне сайта. Если вы пожелаете использовать другие имена директорий, то вам необходимо будет внести соответствующие правки в дальнейшем. ...