php中的星号三角形
我在php中创建三角形时遇到问题。这是我的密码php中的星号三角形,php,Php,我在php中创建三角形时遇到问题。这是我的密码 for($i = 0; $i <= $input; $i++) { for($j = 1; $j <= $i; $j++) { echo " $char  "; } echo "<br>"; } 但我想做的是这样 * * * * * * * * * *
for($i = 0; $i <= $input; $i++) {
for($j = 1; $j <= $i; $j++) {
echo " $char  ";
}
echo "<br>";
}
但我想做的是这样
*
* *
* * *
* * * *
* * * * *
我应该用代码更改什么?您必须确保空格打印的次数正确 首先,我们将遍历所有空格,从1到$input-$i。在这里,我们将打印空白。然后我们将通过astricks循环计算$i的次数 注意:为了与astrick保持一致,我们使用了两次 以下是代码:
for($i = 0; $i <= $input; $i++) {
for($j = 1; $j <= $input - $i; $j++) {
echo "   ";
}
for($j = 1; $j <= $i; $j++) {
echo " $char";
}
echo "<br>";
}
for($i=0;$i分别创建主字符串和“padding”字符串,然后回显连接的结果:
for( $i=0; $i<$input; $i++ ){
// number of asterisks we need for this iteration
$chars='';
for( $j=0; $j<=$i; $j++ ){
$chars.="$char ";
}
// add spaces for alignment
$padding='';
for( $j=$i; $j<$input; $j++ ){
$padding.=" ";
}
// output "padding" first, then our asterisks string
echo $padding.$chars."<br />";
}
对于($i=0;$i有一个本机PHP函数,您可以在其中一个方向上说如何填充字符串:STR\u pad\u RIGHT
,STR\u pad\u BOTH
,STR\u pad\u LEFT
<?php
$char = '*'; // the character to print
$input = 10; // number of rows
$padding = STR_PAD_BOTH; // STR_PAD_RIGHT, STR_PAD_BOTH , STR_PAD_LEFT
for($i = 0; $i <= $input; $i++) {
$stars = '';
for($j = 1; $j <= $i; $j++) {
$stars .= " $char";
}
echo PHP_EOL . str_pad($stars, $input*2, ' ', $padding);
}
这里STR\u PAD\u LEFT
:
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *
* * * * * * * * * *
$input的值是什么?$input是文本框中的输入值。在我的回答下面的问题旁边,您可以使用CSS样式将文本向右对齐“text align:right;”与html块对齐。
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *
* * * * * * * * * *
*
* *
* * *
* * * *
* * * * *
* * * * * *
* * * * * * *
* * * * * * * *
* * * * * * * * *
* * * * * * * * * *