首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP中创建金字塔星型过程中的问题

PHP中创建金字塔星型过程中的问题
EN

Stack Overflow用户
提问于 2022-03-23 11:45:19
回答 3查看 100关注 0票数 1

问题:

我的守则:

代码语言:javascript
复制
   <html\>


  
    Enter the number of rows:   
      
  


<?php   
    if($_POST)  
    {     
        $row = $_POST['row'];   
    
        if(!is_numeric($row))  
        {  
            echo "Make sure you enter a NUMBER";  
            return;   
        }   
    
        else  
        {  
            for($row=0;$row<=1;$row++){ 
    for($j=0;$j<=$row;$j++){ echo "#"; } echo ""; }}}?>

问题是它只显示了两行

我期待如照片中所示

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2022-03-23 11:59:36

代码语言:javascript
复制
$row = 10;
for($i=0;$i<=$row;$i++){ 
for($j=0;$j<=$i;$j++){ echo "#"; } echo "<br>"; }
票数 0
EN

Stack Overflow用户

发布于 2022-03-23 11:54:43

您正在重写$row变量。另外,您不需要else,因为您正在返回,以防if(!is_numeric)为真;

这样就行了。

代码语言:javascript
复制
if(isset($_POST['row'])) {     
    $rows = $_POST['row'];   

    if(!is_numeric($rows))  
    {  
        echo "Make sure you enter a NUMBER";  
        return;   
    }

    for($row=0;$row<=$rows;$row++){ 

        for($j=0;$j<=$row;$j++){ 
            echo "#"; 
        } 
        
        echo "\n";
    }
    
}
票数 0
EN

Stack Overflow用户

发布于 2022-03-23 12:09:39

您可以使用PHP函数重复来简化脚本。这将只需要一个循环,这样您就不会与变量名称混淆。

代码语言:javascript
复制
$row = 10;
$i   = 1;
while ($i <= $row)
{
    echo str_repeat("#", $i); echo "\n";
    $i ++;
}

工作示例这里

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71586657

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档