是否可以在Yii(或甚至是php)中使用一种语言来获取该语言的所有字符?伪代码就像:
Yii::app()->language = 'en-US';
Yii::app()->returnAlphabetAsArray(); // returns ['A', 'B', 'C', 'D', ... 'Z']
Yii::app()->language = 'ru-RU';
Yii::app()->returnAlphabetAsArray(); // returns ['A', 'Б', 'В', 'Г' .... 'Я']
这需要适用于任何给定数量的语言,因此实际上为每种语言手动将它们输入数据库或数组并不可行。我之前对Yii的内容感到惊讶,所以希望它隐藏在某个地方。
答案 0 :(得分:0)
在纯PHP中,在数组中获取英文字母相当容易。只需使用:
$alphabet = range('A', 'Z');
不幸的是,这不适用于其他语言,所以你可以使用这样的东西。
foreach(range(0x0391, 0x03A9) as $letter) {
$alphabet[] = html_entity_decode("&#$letter;", ENT_COMPAT, "UTF-8");
}
此处0x0391
是希腊字母Alpha(第一个字母)的十六进制,0x03A9
是希腊字母Omega(最后一个字母)的十六进制。我知道它不是100%自动化的,但它可以节省一些击键,因为你只需要定义语言的第一个和最后一个字符,并使用一个返回整个字符集的函数。