我刚刚开始在工作中学习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循环。
答案 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)
使用for
和foreach
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++;
}