2.6 から 3.1 への移行中に、クロアチア語の特殊文字の表示で問題が発生する場合があります。コンテンツはデータベースから取得されます。
コンテンツは CakePHP 2.x アプリケーションを介してデータベースに保存され、適切に表示できます。しかし、新しいアプリケーションを接続すると、これらの文字 čćšđž の適切な表示に問題があります。
データベース/テーブル: MyISAM utf8_general_ci
CakePHP 2.x アプリ
public $default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'login' => '*********',
'password' => '************',
'database' => 'apartmani',
);
core.php
/**
* Application wide charset encoding
*/
Configure::write('App.encoding', 'UTF-8');
ブートストラップ.php
Configure::write('Config.language', 'hrv');
cakephp 3.1-rc1
'App' => [
'namespace' => 'App',
'encoding' => 'UTF-8',
...
'Datasources' => [
'default' => [
'className' => 'Cake\Database\Connection',
'driver' => 'Cake\Database\Driver\Mysql',
'persistent' => false,
'host' => 'localhost',
/**
* CakePHP will use the default DB port based on the driver selected
* MySQL on MAMP uses port 8889, MAMP users will want to uncomment
* the following line and set the port accordingly
*/
//'port' => 'nonstandard_port_number',
'username' => '*********',
'password' => '***********',
'database' => 'apartmani',
'encoding' => 'utf8',
'timezone' => 'UTC',
'cacheMetadata' => true,
bootstap.php
/**
* Set the default locale. This controls how dates, number and currency is
* formatted and sets the default language to use for translations.
*/
ini_set('intl.default_locale', 'hr');
これを修正する方法は?