PHP字母循环重复

时间:2013-04-28 11:13:32

标签: php

我刚刚开始在工作中学习PHP,并被要求输出大写字母,然后是小写字母。这需要在页面上重复10次。

这是我放在一起的代码,但是必须有更简单的方法来重复这个,而不是只复制和粘贴它10次。

<?php
for ($i=65; $i<=90; $i++) {
$Letter = chr($i);
print $Letter .", ";
}
for ($i=97; $i<=122; $i++) {
$Letter = chr($i);
print $Letter .", ";
}
?>

有人告诉我,For循环最好用,而不是foreach循环。

6 个答案:

答案 0 :(得分:5)

<?php
for ($a = 1; $a <= 10; $a++)
{
    for ($i=65; $i<=90; $i++) {
    $Letter = chr($i);
    print $Letter .", ";
    }
    for ($i=97; $i<=122; $i++) {
    $Letter = chr($i);
    print $Letter .", ";
    }
}
?>

甚至更好:

<?php
for ($a = 1; $a <= 10; $a++)
{
    echo implode(', ', range('A','Z'));
    echo implode(', ', range('a','z'));
}
?>

答案 1 :(得分:1)

print substr(str_repeat(implode(", ", array_merge(range('a', 'z'), range('A', 'Z'))).", ", 10), 0, -2);

这是我能想象到的最短路。

但你可以做的只是在你的代码周围放一个for循环:

for ($repeat_times = 10; $repeat_times; $repeat_times--)
    for ($i=65; $i<=90; $i++) {
        $Letter = chr($i);
        print $Letter .", ";
    }
    for ($i=97; $i<=122; $i++) {
        $Letter = chr($i);
        print $Letter .", ";
    }
}

答案 2 :(得分:1)

使用forforeach cicles的解决方案:

<?php
$prints = 10;
$alphas = array_merge(range('A', 'Z'), range('a', 'z'));

for ($i = 1; $i <= $prints; $i++) {
  echo "$i\n";
  foreach ($alphas as $letter) {
    echo "{$letter} ";
  }

  echo "\n\n";
}

只需使用echo说明更改输出。

答案 3 :(得分:1)

Try this: using an additional loop at the top, solves the problem:

<?php
for ($count=0; $count<10; $count++) {
    for ($i=65; $i<=90; $i++) {
        $Letter = chr($i);
        print $Letter .", ";
    }
    for ($i=97; $i<=122; $i++) {
        $Letter = chr($i);
        print $Letter .", ";
    }
    echo "<br/>";
}
?>

或者你也可以这样做:

<?php
for ($a = 1; $a <= 10; $a++) {
    echo implode(', ', range('A','Z'));
    echo " | ".implode(', ', range('a','z'));
    echo "<br/>";
}
?>

答案 4 :(得分:0)

怎么样:

<?php
    for ($j= 0; $j < 10; $j++) {
        for ($i=65; $i<=90; $i++) {
        $Letter = chr($i);
        print $Letter .", ";
        }
        for ($i=97; $i<=122; $i++) {
        $Letter = chr($i);
        print $Letter .", ";
        }
    }
?>

答案 5 :(得分:0)

不要使用字符数组。 String已经是一个数组。

<?php
$letters = "abcdefghijklmnopqrstuvwxyz";

$repeat = 0;

while($repeat < 10)
{
    for($i = 0; $i < strlen($letters); $i++){
        echo strtoupper($letters[$i]). "<br>";
    }

    for($i = 0; $i < strlen($letters); $i++){
        echo $letters[$i]. "<br>";
    }

    $repeat++;
}