为什么这段代码不能简单地打印字母A到Z?

本秂侑毒 提交于 2020-02-26 23:45:45
<?php
for ($i = 'a'; $i <= 'z'; $i++)
    echo "$i\n";

此代码段提供以下输出(换行符替换为空格):

abcdefghijklmnopqrstu vwxyz aa ab ac ad ae ag ag ai aj ak al am a a a ap ap a ar a ar av aw ax ay az ba bb bc bd bf bg bh bb bb bb b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b b bw bx by bz ca cb cc cd ce c c c c c c c c c c c c c c c c c c c c c c c c c c c d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d du dv dw dx dy d e e e e e e e e e e e e e e e e e e e e e e e e e e ep ep e e e e e e e e e e ex ex ... on yz


#1楼

PHP具有循环字母的功能,可以超出单个字符; 其余的将以这种方式完成:aa ac ... zz,依此类推。

试试这个:

<?php
for ($i = 'a'; $i !== 'aa'; $i++)
    echo "$i\n";
?>

#2楼

这也可以使用:

for ($i = 'a'; $i <= 'z'; $i=chr(ord($i)+1))
    echo "$i\n";

#3楼

试试这个代码。 我认为这段代码对您有所帮助。

$alphas = range('A', 'Z');
foreach($alphas as $value){
    echo $value."<br>";
}

按顺序显示26个字母。


#4楼

也许这段代码可行。 它很容易理解:

<?php
$ascii_val = ord("a");
for($i=$ascii_val;$i<$ascii_val+26;$i++){
echo chr($i)."\n";
}
?>

其中26是字母表中的字母总数。


#5楼

其他人已经说过为什么PHP没有显示你的期望。 以下是您获得所需结果的方法:

<?php
for ($i = ord('a'); $i <= ord('z'); $i++)
    echo chr($i);
?>
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!