Показаны сообщения с ярлыком utf-8. Показать все сообщения
Показаны сообщения с ярлыком utf-8. Показать все сообщения

четверг, 22 ноября 2012 г.

mysql: set utf-8 by default

$ cd /etc/mysql
$ sudo nano my.cnf

[client]
default-character-set   = utf8

[mysqld]
init_connect='SET collation_connection = utf8_general_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_general_ci
skip-character-set-client-handshake

[mysql]
default-character-set   = utf8

$ sudo service mysql restart

среда, 8 апреля 2009 г.

PHP substr + utf-8

Положим нам надо в списке показывать кусок сообщения длиной не более 100символов, если сообщение больше 100символов, в конце добавить троеточие.
В кодировке UTF простое обрезание строки substr($str, 0, 100), приводит к появлению нераспознанных символов. Нам помогут функции mb_
public function getSubContent()
{
$str = strip_tags($this->getContent());
return mb_substr($str, 0, 100, 'utf-8').
(mb_strlen($str, 'utf-8') > 100 ? '...' : '');
}