Кодировка UTF8 не работает в CakePHP Shell - PullRequest
2 голосов
/ 17 мая 2011

У меня есть сайт CakePHP, который работает нормально (с точки зрения кодирования) ... но сценарий оболочки некорректно кодирует данные при сохранении данных. Сайт и оболочка используют одну и ту же строку подключения ... но программа оболочки не учитывает кодировку UTF8. (1 странная вещь: если я удаляю элемент 'encoding' из строки подключения и запускаю программу оболочки, данные сохраняются, как и ожидалось ... но я хотел бы повторно использовать ту же строку подключения).

база данных mysql:

CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci

Строка подключения Cakephp MySQL:

var $default = array(
    'driver' => 'mysql',
    'persistent' => false,
    'host' => 'localhost',
    'login' => 'user',
    'password' => 'mypassword',
    'database' => 'dbname',
    'prefix' => '',
            'encoding' => 'utf8'
);

1 Ответ

1 голос
/ 17 мая 2011

в вашем сценарии оболочки, попробуйте выполнить следующий запрос сразу после подключения:

SET NAMES 'utf8'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...