Проблема такая: текст пишет нормально, но когда сокращает в модуле описание товара возникает проблема с кодировкой. Пример: "Портативный навигатор с сенсорн�.." Помогите разобраться плз.
Замените в модуле код на данную конструкцию (сократит до последнего пробела и постави точки, кол-во сивомолов в примере 60): <?php Код: $var = 'Привет Робот сегодня здесь быал не раз и не два и целуой сотни мало'; //trim message to 100 characters, regardless of where it cuts off $msgTrimmed = mb_substr($var,0,60); //find the index of the last space in the trimmed message $lastSpace = strrpos($msgTrimmed, ' ', 0); //now trim the message at the last space so we don't cut it off in the middle of a word echo mb_substr($msgTrimmed,0,$lastSpace).'...'; ?> Привет Робот сегодня здесь быал не раз и не два и целуой...
если не указано mb_internal_encoding( 'UTF-8' ); или указано с ошибкой: Код: 'description' => mb_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 60, 'UTF-8') . '..', а так хотелось бы понять в какой кодировке строка поступает?
Что для этого надо? БД в UTF-8 без BOM., проверил именно описание товара - в той же кодировке. (прошу прощения за неграмотность - я новичок в этих вопросах) --- Добавлено, 22 мар 2014 --- Закинул в модуль mb_internal_encoding( 'UTF-8' ); после <?php и всё стало работать как положено. Я правильно сделал?
можно и так, mb_substr(strip_tags(html_entity_decode($result['description'], ENT_QUOTES, 'UTF-8')), 0, 60, 'UTF-8') говорит что утф-8 в частности применить