php中的星号三角形

php中的星号三角形,php,Php,我在php中创建三角形时遇到问题。这是我的密码 for($i = 0; $i <= $input; $i++) { for($j = 1; $j <= $i; $j++) { echo " $char &nbsp"; } echo "<br>"; } 但我想做的是这样 * * * * * * * * * *

我在php中创建三角形时遇到问题。这是我的密码

for($i = 0; $i <= $input; $i++) {
    for($j = 1; $j <= $i; $j++) {
        echo " $char &nbsp";
    }
    echo "<br>";
}
但我想做的是这样

                *  
            *   *  
        *   *   *  
    *   *   *   *  
*   *   *   *   *  

我应该用代码更改什么?

您必须确保空格打印的次数正确

首先,我们将遍历所有空格,从1到$input-$i。在这里,我们将打印空白。然后我们将通过astricks循环计算$i的次数

注意:为了与astrick保持一致,我们使用了两次

以下是代码

for($i = 0; $i <= $input; $i++) {
    for($j = 1; $j <= $input - $i; $j++) {
        echo " &nbsp&nbsp";
    }
    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 &nbsp;";
    }

    // add spaces for alignment
    $padding='';
    for( $j=$i; $j<$input; $j++ ){
        $padding.="&nbsp; &nbsp;";
    }

    // 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块对齐。
          *         
         * *        
        * * *       
       * * * *      
      * * * * *     
     * * * * * *    
    * * * * * * *   
   * * * * * * * *  
  * * * * * * * * * 
 * * * * * * * * * *
                   *
                 * *
               * * *
             * * * *
           * * * * *
         * * * * * *
       * * * * * * *
     * * * * * * * *
   * * * * * * * * *
 * * * * * * * * * *