Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Обсуждение общих технических вопросов > Общие вопросы

Ответ
 
Опции темы Опции просмотра
Старый 04.10.2011, 19:04   #1
elezeo
Продвинутый
 
Аватар для elezeo
 
Регистрация: 05.07.2011
Адрес: Россия, Интернет
Сообщений: 69
По умолчанию strtolower() портит текст

в расширении имеется строка вида
Код:
ucfirst(strtolower($this->pi_getLL('label_xxxxx')))
Хитро канечно придумано, но не мною!
Так вот. После такой обработки текста из языкового файла выводится на экран крякозяброй.
Без обработки конечно же нормально.
Как решить сея проблему? Может есть тайповская функция для работы с utf8 текстами? Или дополнение какое-нибудь.
Понятно, что на выходе этой функции замененные сисволы уже в другой кодировке.
__________________
Успех не приходит к тем, кто ждет, что он к ним придет!
Он приходит к тем, кто создал для Успеха благоприятные условия!
elezeo вне форума   Ответить с цитированием
Старый 04.10.2011, 22:34   #2
dmartynenko
Senior Member
 
Аватар для dmartynenko
 
Регистрация: 20.07.2007
Адрес: Беларусь, Минск
Сообщений: 957
Отправить сообщение для dmartynenko с помощью ICQ
По умолчанию

Посмотрите на аналогичные PHP функции mb_* (из библиотеки mbstring).

ucfirst и strtolower работают только с однобайтовыми кодировками.
dmartynenko вне форума   Ответить с цитированием
Старый 04.10.2011, 23:29   #3
elezeo
Продвинутый
 
Аватар для elezeo
 
Регистрация: 05.07.2011
Адрес: Россия, Интернет
Сообщений: 69
По умолчанию

Это повод создания таких функций как:
t3lib_div::strtolower(), t3lib_div::strtoupper(), t3lib_div::ucfirst() и t3lib_div::lcfirst()
Тока кто бы этим занялся
__________________
Успех не приходит к тем, кто ждет, что он к ним придет!
Он приходит к тем, кто создал для Успеха благоприятные условия!
elezeo вне форума   Ответить с цитированием
Старый 05.10.2011, 12:06   #4
dmartynenko
Senior Member
 
Аватар для dmartynenko
 
Регистрация: 20.07.2007
Адрес: Беларусь, Минск
Сообщений: 957
Отправить сообщение для dmartynenko с помощью ICQ
По умолчанию

Напишите в баг трекер пожелание.

Но задача специфическая, скорее используемая для FE. В ядре и BE нигде не припомню что где-то операции с регистром символов делаются.
dmartynenko вне форума   Ответить с цитированием
Старый 09.10.2011, 06:24   #5
jettero
Senior Member
 
Регистрация: 24.06.2006
Сообщений: 143
По умолчанию

Цитата:
Сообщение от elezeo Посмотреть сообщение
Это повод создания таких функций как:
t3lib_div::strtolower(), t3lib_div::strtoupper(), t3lib_div::ucfirst() и t3lib_div::lcfirst()
Тока кто бы этим занялся
t3lib_div::strtolower() и t3lib_div::strtoupper() уже есть, но конвертируют только латинские символы, вы можете открыть тикет в баг трекере, чтобы их сделали мультибайтными или можете сами сделать патч и отправить на одобрение.
jettero вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Большая проблема - футер залазит на текст страницы lafarge Установка 7 02.07.2009 12:21
Вставка картинок в текст RTE htmlArea (tt_news) dmartynenko Общие вопросы 16 17.09.2008 19:57
Текст и php код в левое меню margol TypoScript практикум 5 29.08.2007 10:38
каким образом вставить форматированный текст в контент? Илья HTMLArea, RTE, tinymce_rte и другие визуальные редакторы 2 03.04.2006 14:36
RTE сохраняет текст не полностью (3.6.0 RC1) Loverboy HTMLArea, RTE, tinymce_rte и другие визуальные редакторы 3 22.02.2004 23:02


Часовой пояс GMT +4, время: 18:59.


Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot

Хостинг и техническая поддержка: TYPO3 Лаборатория