Забыли пароль?
Запросите новый здесь.

Автор темы: grungestranger
ID темы: 2724
Информация:
Тема содержит 23 сообщения, была просмотрена 20985 раз.
Просмотр темы
PHP-Fusion Russia » Веб-разработка » PHP
 Распечатать тему
strtoupper + utf-8
grungestranger
Всем привет)
Очень странная ситуация, понятно, что надо использовать mb_strtoupper(). Но я работаю над проектом, и этот проект у меня есть соответственно на локале, и на нескольких серверах (боевой, тестовый...). Так вот в нем везде strtoupper и где-то она работает хорошо (хотя везде юникод), где-то выводятся кракозябры, а где-то она просто выводит исходную строку без изменений. Разное поведение на разных серверах. Что это может быть?))
 
Web
Deorchik
grungestranger, Было такое тоже ставил и замечал что где то есть кракозябры, а где то нет.... пока не обратил внимание на настройки хостинга - нужно менять бывает =)))
 
Web
Polarfox
mb_strtoupper ( string $str [, string $encoding = mb_internal_encoding() ] )
обычно зависит от кодировки, и часто автоматом она определяется отвратительно плохо.
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
Rush
здесь фишка в том что mb_ значит multi byte. в юникоде уже давно появились символы, которые занимают не 1 байт, а несколько. и strtoupper будет считать что все символы - 1 байт, а mb_strtoupper будет учитывать, что есть символы побольше. вообще с multi byte символами куча геморроя, особенно в mysql, жить как бы не мешает, но иногда приходится помучаться
 
Web
Polarfox
это не 2 байта значит на символ?
вроде правильно если так, сказано utf-8 и значит все должно быть 2 байта на символ, значит можно тупить-косячить если 3-4 байта.
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
Rush
https://ru.wikipe...wiki/UTF-8 там есть про диапазоны
 
Web
Polarfox
ну да, куча версий, плюс оно еще добавляется, эти все эможии и прочее.
Всегда делайте backup перед изменениями | Указывайте свою версию в подписи/профиле. | Вся бесплатная тех. поддержка только на форуме
 
Deorchik
Ребят перешел тоже на утф-8 - проблема такая все нормально отображается кроме информации в бд - там кракозябры =( кто знает как лечить?
в бд тоже настройки на утф 8

Объединено 20.07.2016 21:04:
я перешел на mysqli по мануалу на пф ...

Объединено 20.07.2016 21:07:
http://www.php-fu...icle_id=49

Объединено 20.07.2016 21:41:
Всем спасибо =) проблема решена (set_charset)
Изменил(а) Deorchik, 20.07.2016 21:41
 
Web
SchreiBear
Deorchik, думаю это долеко не все проблемы..ББ уже пробывал?
Нужно сказать огромное спасибо людям, которые живут на популярных девелопер форумах и дают там адекватные ответы на абсолютно «нубские» вопросы без попыток унизить вопрошающего.
 
Deorchik
SchreiBear, ББ - что? =)) типа попробовать использовать этот набор бук? просто у меня буква ш в квадратик превращается =))))
 
Web
SchreiBear
Deorchik, ББ коды пробывал использовать?... они ругаються в утф... там тоже править нужно
Нужно сказать огромное спасибо людям, которые живут на популярных девелопер форумах и дают там адекватные ответы на абсолютно «нубские» вопросы без попыток унизить вопрошающего.
 
Deorchik
SchreiBear, неа, не ругается у меня =)))
 
Web
SchreiBear
Deorchik, ну значит всё окей

Объединено 20.07.2016 22:24:
Deorchik, а где именно буква в ш приврашается ...в меню или в статьях?
Изменил(а) SchreiBear, 20.07.2016 22:24
Нужно сказать огромное спасибо людям, которые живут на популярных девелопер форумах и дают там адекватные ответы на абсолютно «нубские» вопросы без попыток унизить вопрошающего.
 
Deorchik
SchreiBear, preg_replace... (^|[^a-z0-9_А-Яа-я])... где-то говорят что это на уровне php или самого utf-8 =(((
 
Web
grungestranger
Еще по теме, существует такая вот настроечка в php.ini - mbstring.func_overload.
 
Web
Deorchik
Кстати, вопрос в не тему, но - кто то крутил php7 на денвер?
 
Web
Rush
боже, кто-то еще пользуется денвером?)
x1
 
Web
Deorchik
Rush, меня еще никто так не унижал.... ak, я слышал есть какие то другие наборы для вед разработчиков, а так не хочу ставить сервер mysql...
 
Web
Rush
Называются убунту, вагрант, докер
 
Web
Deorchik
Rush, а как на счет опен сервер ?
 
Web

Поделиться этой темой
Социальные закладки: Vkontakte Odnoklassniki Mail.ru Facebook Google Tweet This
URL:
BBcode:
HTML:

Перейти на форум:
Похожие темы
Топ 5 пользователей форума
Zaxap Zaxap (1,090)   Vova Vova (877)   Pisatel Pisatel (678)   util util (666)   SchreiBear SchreiBear (625)