首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >PHP迭代每一行,但计算它们

PHP迭代每一行,但计算它们
EN

Stack Overflow用户
提问于 2018-08-21 00:21:21
回答 1查看 40关注 0票数 -3

所以目前我有一个联系人文本区,它只在第二行和第三行有一个图标。

我试图给每一行添加一个条件,但似乎不是这样的,有人能帮我实现这个结果吗?

$getc = $connect->query("SELECT * FROM contactos WHERE id = 1");
$contacto = $getc->fetch_array(MYSQLI_ASSOC);
$subject = $contacto['texto'];
foreach(preg_split("/((\r?\n)|(\r\n?))/", $subject) as $line){
    for ($x = 1; $x <= 5; $x++) {
        if($x == 1){
             echo '<p style="margin-top:25px;">'.$line.'</p>';
        }else if($x == 2){
            echo '<p><i class="phone"></i> <span style="margin-left:15px;">'.$line.'</span></p>';
        }else if($x == 3){
            echo '<p><i class="mail"></i> <span style="margin-left:24px;">'.$line.'</span></p>';
        }else{
             echo '<p>'.$line.'</p>';
        }                       
    } 
} 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-21 04:34:44

所以你只想打印第三行和第四行。我们需要稍微修改一下你的代码:

$getc = $connect->query("SELECT * FROM contactos WHERE id = 1");
$contacto = $getc->fetch_array(MYSQLI_ASSOC);
$subject = $contacto['texto'];

$x = 1;
foreach(preg_split("/((\r?\n)|(\r\n?))/", $subject) as $line){    
    if($x == 1){
         echo '<p style="margin-top:25px;">'.$line.'</p>';
    }else if($x == 2){
        echo '<p><i class="phone"></i> <span style="margin-left:15px;">'.$line.'</span></p>';
    }else if($x == 3){
        echo '<p><i class="mail"></i> <span style="margin-left:24px;">'.$line.'</span></p>';
    }else{
         echo '<p>'.$line.'</p>';
    }                       
    $x++; 
} 

因此,如您所见,您需要计算foreach迭代次数。它里面的另一个循环不会做任何好的事情。

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

https://stackoverflow.com/questions/51934867

复制
相关文章

相似问题

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