Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
Страницы: (2) [1] 2  ( Перейти к первому непрочитанному сообщению )  
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Не правильно работает функция strlen(), Помогите разобрать с данной проблеммой
slavon1500  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



PHP и еще раз PHP))
*

Профиль
Группа: Пользователь
Сообщений: 46
Пользователь №: 36046
На форуме: 4 года, 4 месяца, 26 дней
Карма: 1




В общем английские буквы считает правильно эта функция, а русские умножает на два почему так? как это можно исправить?
вот код :

$str = "привет";
echo strlen($str); // выводит 12
$a = "hello";
echo strlen($a); // выводит 5

такого же точно не должно быть? может что то с настройками не так?


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Valick  
Дата
Цитировать сообщение

Пользователь сейчас на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 5617
Пользователь №: 35718
На форуме: 4 года, 6 месяцев, 3 дня
Карма: 173




у вас кодировка utf-8 функция считает байты, а не буквы


--------------------
wmr - R281553014107
PMПисьмо на e-mail пользователю
    1   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Winston  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме




******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 9509
Пользователь №: 18161
На форуме: 7 лет, 10 месяцев, 29 дней
Карма: 552




PMСайт пользователя
    1   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Zzepish  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 5583
Пользователь №: 32538
На форуме: 4 года, 11 месяцев, 26 дней
Карма: 56




Используй mb_strlen()
PMПисьмо на e-mail пользователю
    1   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
slavon1500  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



PHP и еще раз PHP))
*

Профиль
Группа: Пользователь
Сообщений: 46
Пользователь №: 36046
На форуме: 4 года, 4 месяца, 26 дней
Карма: 1




Valick
Winston
Zzepish
Ясно спасибо большое ! А то я уже начал гуглить по поводу настроек денвера..


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
slavon1500  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



PHP и еще раз PHP))
*

Профиль
Группа: Пользователь
Сообщений: 46
Пользователь №: 36046
На форуме: 4 года, 4 месяца, 26 дней
Карма: 1




Zzepish
А как правильно ее использовать что то я пишу mb_strlen($text) все равно тоже самое выводит..
как правильно писать то подскажите пожалуйста?


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Zzepish  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 5583
Пользователь №: 32538
На форуме: 4 года, 11 месяцев, 26 дней
Карма: 56




slavon1500
mb_strlen($text,'UTF-8')
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
slavon1500  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



PHP и еще раз PHP))
*

Профиль
Группа: Пользователь
Сообщений: 46
Пользователь №: 36046
На форуме: 4 года, 4 месяца, 26 дней
Карма: 1




Zzepish
А все ясно rolleyes.gif спасибо большое! smile.gif


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Zzepish  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 5583
Пользователь №: 32538
На форуме: 4 года, 11 месяцев, 26 дней
Карма: 56




slavon1500
да незачто))) rolleyes.gif
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Игорь_Vasinsky  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



c начала 2017 года в Новосибирске.
******

Профиль
Журнал
Группа: ★ЛжеЭксперт★
Завсегдатай форума
Сообщений: 26362
Пользователь №: 21350
На форуме: 7 лет, 2 месяца, 8 дней
Карма: 736




там целое семейство есть для строковых функций для юникода с префиксом mb_


--------------------
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql (TSql, BI OLAP, MDX), Git, SVN, CodeIgnater, Yii 2, JiRA, Redmine, Bitbucket, Composer
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
slavon1500  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



PHP и еще раз PHP))
*

Профиль
Группа: Пользователь
Сообщений: 46
Пользователь №: 36046
На форуме: 4 года, 4 месяца, 26 дней
Карма: 1




Zzepish
А еще если Вас не затруднит, не могли бы помочь разобраться?
Вот я хочу допустим из переменной вытащить букву русские у меня нормально не получается вытащить потому что что то с кодировкой выдает вот такой вопрос в ромбике � а английские нормально выводит делаю я вот так :

$a = "привет";
echo $a{0}; // должно быть "п" а у меня вопрос в ромбике..

Как можно сделать чтоб нормально отображалось?


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Winston  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме




******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 9509
Пользователь №: 18161
На форуме: 7 лет, 10 месяцев, 29 дней
Карма: 552




Сначала на массив нужно разбить вот так http://phpforum.ru/index.php?showtopic=0&v...dpost&p=1698036
PMСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
killer8080  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 8925
Пользователь №: 26630
На форуме: 6 лет, 2 месяца, 21 день
Карма: 603




Цитата (slavon1500 @ 7.01.2013 - 15:37)
А как правильно ее использовать что то я пишу mb_strlen($text) все равно тоже самое выводит..

чтобы не указывать кодировку каждый раз при вызове mb_ функций, можно один раз в начале её указать явно
mb_internal_encoding("UTF-8");
PMПисьмо на e-mail пользователю
    1   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
slavon1500  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



PHP и еще раз PHP))
*

Профиль
Группа: Пользователь
Сообщений: 46
Пользователь №: 36046
На форуме: 4 года, 4 месяца, 26 дней
Карма: 1




killer8080
Ясно спасибо


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
slavon1500  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



PHP и еще раз PHP))
*

Профиль
Группа: Пользователь
Сообщений: 46
Пользователь №: 36046
На форуме: 4 года, 4 месяца, 26 дней
Карма: 1




Winston
не понял как нужно делать по вашему методу huh.gif
получилось по методу пользователя nugle через функцию mb_strtoupper все получилось без всяких вопросов отлично спасибо за помощь! только пожалуйста если не сложно можете объяснить как по вашему методу работать? (что там столько много писанины..)

Это сообщение отредактировал slavon1500 - 7.01.2013 - 19:28


--------------------
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темыСтраницы: (2) [1] 2  Ответ в темуСоздание новой темыСоздание опроса