首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何将PHP结果显示到shell_exec表格中?

如何将PHP结果显示到shell_exec表格中?
EN

Stack Overflow用户
提问于 2019-03-13 07:05:38
回答 1查看 564关注 0票数 1

我有一个PHP shell_exec命令,它为每个结果输出5行数据,如果shell_exec有1个结果,它将输出5行,如下所示:

代码语言:javascript
复制
john
richmond
27
london
dogs

该命令可能有超过1个结果,以下是3个结果的示例:

代码语言:javascript
复制
    john
    richmond
    27
    london
    dogs
    dave
    archibold
    34
    new york
    cats
    harry
    harris
    33
    dublin
    fish

正如你所看到的,每个结果有5行,名字,姓氏,年龄,城市和宠物。我希望创建一个html表的结果,但是,由于每次结果的数量可能不同,他们需要被分成5个我不确定如何获得这一点。这是所需的HTML输出:

代码语言:javascript
复制
| Name  | Surname   | Age | City    | Pet        | 
--------------------------------------------------
| john  | richmond  | 27  | london  | dogs cat   |
| dave  | archibold | 34  | newyork | cats cow   |
| harry | harris    | 33  | dublin  | fish horse |

根据我自己的研究,我认为我可能不得不使用php explode并创建一个数组,我想出了以下几点,但是我不确定如何实现foreach,以及我还需要什么才能让它工作:

代码语言:javascript
复制
<div class="table-responsive">
<?php
$str = shell_exec( "shell command" );
$arr = explode(PHP_EOL, $str); 
$arr = array_chunk($arr,5); 
foreach *

?>

<table>
    <thead>
        <tr>
            <th>Name</th>
            <th>Surname</th>
            <th>Age</th>
            <th>City</th>
            <th>Pet</th>
        </tr>
    </thead>
    <tbody>
    <?php foreach(*) { ?>
    <tr class="1">
    <td class="1">
         <i class="cc <?php echo $name;?></i>
    </td>
    <td class="1">
         <i class="cc <?php echo $surname;?></i>
    </td>
    <td class="1">
         <i class="cc <?php echo $age;?></i>
    </td>
    <td class="1">
         <i class="cc <?php echo $city;?></i>
    </td>
    <td class="1">
         <i class="cc <?php echo $pet;?></i>
    </td>
    </tr>
    </tbody>
 </table>
 </div>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-13 07:33:15

使用array_chunk,你确实已经拥有了你需要的大部分东西,你只需要遍历你的结果数组,并使用一点list的魔力来给你的变量赋值。

简而言之,list所做的就是一个接一个地获取数组元素,并将它们赋给您将在list语句中定义的变量。

代码语言:javascript
复制
<div class="table-responsive">
    <?php 
        $array = array_chunk(
            explode(
                PHP_EOL, 
                shell_exec( "shell command" )
            ),
            5
        ); 
    ?>
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Surname</th>
                <th>Age</th>
                <th>City</th>
                <th>Pet</th>
            </tr>
        </thead>
        <tbody>
            <?php foreach($array as $element) { ?>
                <?php list($name, $surname, $age, $city, $pet) = $element; ?>
                <tr class="1">
                    <td class="1">
                         <i class="cc"><?php echo $name ?></i>
                    </td>
                    <td class="1">
                         <i class="cc"><?php echo $surname ?></i>
                    </td>
                    <td class="1">
                         <i class="cc"><?php echo $age ?></i>
                    </td>
                    <td class="1">
                         <i class="cc"><?php echo $city ?></i>
                    </td>
                    <td class="1">
                         <i class="cc"><?php echo $pet ?></i>
                    </td>
                </tr>
            <?php } ?>
        </tbody>
    </table>
</div>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55131968

复制
相关文章

相似问题

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