2017-11-30 7 views
0

Inflector::slugYii2は、キリル文字から正しくない文字列を生成します。なぜYii2のInflector :: slugがキリル文字から間違ったラテン文字列を生成するのですか?

例:автоматизация - > ですが、これはavtomatizaciyaである必要があります。 зачислить - >zacislitですが、zachislitである必要があります。それを修正するには?

私はこれをSEOのURLに使用します。検索エンジンがウェブサイトのSEO結果を改善するための正しいキーワードを認識しない場合、これは影響を及ぼしますか?

答えて

0

cyrillicの処理にISO 9を使用していて、明らかにそのISO 9:1995バージョンを使用しているためです。私が置いたとき は今:

echo \yii\helpers\Inflector::transliterate('автоматизация', 'Cyrillic; Any-Latin'); 
echo yii\helpers\Inflector::transliterate('зачислить', $a); 

を私が取得:

ISO 9のようである
avtomatizaciâ 
začislitʹ 

:1995。 Slugメソッドは、ASCII文字からcharcterへの変換を行います。例えば、čはcに変更されます。

必要に応じて、そのままstr-replaceとすることもできます。 または、別の方法で音訳を行うことができますlike this

関連する問題