Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Кракозябры при UTF - 8

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
treeek
Отправлено: 26 Марта, 2017 - 13:46:32
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Март 2017  


Помог: 0 раз(а)




Нашел у вас код на форуме градиента текста:
PHP:
скопировать код в буфер обмена
  1. function str2gradient($text,$from='', $to='', $mode="hex")
  2. {
  3.     if($mode=="hex")
  4.     {
  5.         $to   = hexdec($to[0].$to[1]).",".hexdec($to[2].$to[3]).",".hexdec($to[4].$to[5]);
  6.         $from = hexdec($from[0].$from[1]).",".hexdec($from[2].$from[3]).",".hexdec($from[4].$from[5]);
  7.     }
  8.  
  9.     if( empty($text) )
  10.         return '';
  11.     else
  12.         $levels=strlen($text);
  13.  
  14.     if (empty($from))
  15.                 $from = array(0,0,255);
  16.     else
  17.                 $from = explode(",", $from);
  18.                                
  19.     if (empty($to))
  20.  
  21.                 $to = array(255,0,0);
  22.     else
  23.                 $to = explode(",", $to);
  24.  
  25.         $output = "";
  26.  
  27.         for ($i=1;$i<=$levels;$i++)
  28.         {
  29.                 for ($ii=0;$ii<4;$ii++)
  30.                 {
  31.  
  32.                         $tmp[$ii] = $from[$ii] - $to[$ii];
  33.                         $tmp[$ii] = floor($tmp[$ii] / $levels);
  34.                         $rgb[$ii] = $from[$ii] -($tmp[$ii] * $i);
  35.  
  36.                         if ($rgb[$ii] > 255) $rgb[$ii] = 255;
  37.  
  38.                         $rgb[$ii] = dechex($rgb[$ii]);
  39.                         $rgb[$ii] = strtoupper($rgb[$ii]);
  40.  
  41.                         if (strlen($rgb[$ii]) < 2) $rgb[$ii] = "0$rgb[$ii]";
  42.                 }
  43.             $output .= "<font color=\"#".$rgb[0].$rgb[1].$rgb[2]."\">" . $text[$i -1 ] . "</font>";
  44.         }
  45.     return $output;
  46. }
  47.  

При использовании функции с русским текстом echo str2gradient("Тестовый текст", "f11717", "21f117");
Получаются кракозябры: ����������
Хотя при использовании английского такой ошибки нет.
Кодировка стоит UTF-8 в шапке сайта. Думаю ошибка в коде, а где, понять не могу.
 
 Top
Строитель Модератор
Отправлено: 26 Марта, 2017 - 14:20:26
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


Помог: 73 раз(а)




treeek, попробуйте заменить strtoupper() на mb_strtoupper(). И ещё, если понадобится - замените strlen() на mb_strlen().
 
 Top
treeek
Отправлено: 26 Марта, 2017 - 15:00:03
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Март 2017  


Помог: 0 раз(а)




Строитель пишет:
treeek, попробуйте заменить strtoupper() на mb_strtoupper(). И ещё, если понадобится - замените strlen() на mb_strlen().

никаких изменений.
(Добавление)
Решил вопрос. Взял другой код.
 
 Top
quad
Отправлено: 28 Марта, 2017 - 01:47:22
Post Id



Новичок


Покинул форум
Сообщений всего: 39
Дата рег-ции: Март 2017  
Откуда: Россия


Помог: 0 раз(а)




Просто нужно сохранять файл в utf-8 без BOM а не в ansi! м будет всегда все ок или преобразовать русские символы из ansi с помощью iconv() в utf-8
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB