php 在PHP中获取数组中所有字母字符的方法?
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/431912/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Way to get all alphabetic chars in an array in PHP?
提问by Click Upvote
Is there a way to get all alphabetic chars (A-Z) in an array in PHP so I can loop through them and display them?
有没有办法在 PHP 的数组中获取所有字母字符 (AZ),以便我可以遍历它们并显示它们?
回答by PEZ
$alphas = range('A', 'Z');
回答by PEZ
To get both upper and lower case merge the two ranges:
要同时获得大写和小写,请合并两个范围:
$alphas = array_merge(range('A', 'Z'), range('a', 'z'));
回答by PEZ
$alphabet = array('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');
回答by Gumbo
Another way:
其它的办法:
$c = 'A';
$chars = array($c);
while ($c < 'Z') $chars[] = ++$c;
回答by Kyle Michael Becker
PHP has already provided a function for such applications.chr(x)returns the ascii character with integer index of x.
In some cases, this approach should prove most intuitive.
Refer http://www.asciitable.com/
PHP 已经为此类应用程序提供了一个功能。chr(x)返回整数索引为 x 的 ascii 字符。
在某些情况下,这种方法应该被证明是最直观的。
参考http://www.asciitable.com/
$UPPERCASE_LETTERS = range(chr(65),chr(90));
$LOWERCASE_LETTERS = range(chr(97),chr(122));
$NUMBERS_ZERO_THROUGH_NINE = range(chr(48),chr(57));
$ALPHA_NUMERIC_CHARS = array_merge($UPPERCASE_LETTERS, $LOWERCASE_LETTERS, $NUMBERS_ZERO_THROUGH_NINE);
回答by HellBaby
range for A-Z but if you want to go for example from A to DU then:
AZ 的范围,但如果你想从 A 到 DU,那么:
function generateAlphabet($na) {
$sa = "";
while ($na >= 0) {
$sa = chr($na % 26 + 65) . $sa;
$na = floor($na / 26) - 1;
}
return $sa;
}
$alphabet = Array();
for ($na = 0; $na < 125; $na++) {
$alphabet[]=generateAlphabet($na);
}
print_r($alphabet);
your answer will look like:
您的答案将如下所示:
Array ( [0] => A [1] => B [2] => C [3] => D [4] => E [5] => F [6] => G [7] => H [8] => I [9] => J [10] => K [11] => L [12] => M [13] => N [14] => O [15] => P [16] => Q [17] => R [18] => S [19] => T [20] => U [21] => V [22] => W [23] => X [24] => Y [25] => Z [26] => AA [27] => AB [28] => AC [29] => AD [30] => AE [31] => AF [32] => AG [33] => AH [34] => AI [35] => AJ [36] => AK [37] => AL [38] => AM [39] => AN [40] => AO [41] => AP [42] => AQ [43] => AR [44] => AS [45] => AT [46] => AU [47] => AV [48] => AW [49] => AX [50] => AY [51] => AZ [52] => BA [53] => BB [54] => BC [55] => BD [56] => BE [57] => BF [58] => BG [59] => BH [60] => BI [61] => BJ [62] => BK [63] => BL [64] => BM [65] => BN [66] => BO [67] => BP [68] => BQ [69] => BR [70] => BS [71] => BT [72] => BU [73] => BV [74] => BW [75] => BX [76] => BY [77] => BZ [78] => CA [79] => CB [80] => CC [81] => CD [82] => CE [83] => CF [84] => CG [85] => CH [86] => CI [87] => CJ [88] => CK [89] => CL [90] => CM [91] => CN [92] => CO [93] => CP [94] => CQ [95] => CR [96] => CS [97] => CT [98] => CU [99] => CV [100] => CW [101] => CX [102] => CY [103] => CZ [104] => DA [105] => DB [106] => DC [107] => DD [108] => DE [109] => DF [110] => DG [111] => DH [112] => DI [113] => DJ [114] => DK [115] => DL [116] => DM [117] => DN [118] => DO [119] => DP [120] => DQ [121] => DR [122] => DS [123] => DT [124] => DU )
回答by Aaron Maenpaa
<?php
$array = Array();
for( $i = 65; $i < 91; $i++){
$array[] = chr($i);
}
foreach( $array as $k => $v){
echo "$k $v \n";
}
?>
$ php loop.php
0 A
1 B
2 C
3 D
4 E
5 F
6 G
7 H
...
回答by pbarney
If you need an array that has alphabetical keys as well as elements (for an alphabetical dropdown list, for example), you could do this:
如果您需要一个具有字母键和元素的数组(例如,对于字母下拉列表),您可以这样做:
$alphas = array_combine(range('A','Z'),range('A','Z'))
Yields:
产量:
array (size=26)
'A' => string 'A' (length=1)
'B' => string 'B' (length=1)
'C' => string 'C' (length=1)
'D' => string 'D' (length=1)
...etc
回答by benlumley
$array = range('a', 'z');
回答by userlond
Maybe it's a little offtopic (topic starter asked solution for A-Z only), but for cyrrilic character soltion is:
也许这有点题外话(主题初学者只询问了 AZ 的解决方案),但对于西里尔字符的解决方案是:
// to place letters into the array
$alphas = array();
foreach (range(chr(0xC0), chr(0xDF)) as $b) {
$alphas[] = iconv('CP1251', 'UTF-8', $b);
}
// or conver array into comma-separated string
$alphas = array_reduce($alphas, function($p, $n) {
return $p . '\'' . $n . '\',';
});
$alphas = rtrim($alphas, ',');
// echo string for testing
echo $alphas;
// or echo mb_strtolower($alphas); for lowercase letters

