Maison > développement back-end > tutoriel php > Explication détaillée de la façon dont PHP utilise l'en-tête pour exporter Excel

Explication détaillée de la façon dont PHP utilise l'en-tête pour exporter Excel

小云云
Libérer: 2023-03-22 20:32:01
original
3211 Les gens l'ont consulté

Cet article partage principalement avec vous l'explication détaillée de la façon d'exporter Excel à l'aide de l'en-tête PHP. J'espère qu'il pourra vous aider. Jetons d'abord un coup d'œil à l'image d'exemple.

Ceci est le bouton d'exportation execl

<button class="btn btn-success" type="button" id="execl"><i class="icon-search"></i>导出execl</button>
<script>
        $("#execl").click(function(){
           var  data = $("form").serialize();
            location.href = "<{:U(&#39;excel&#39;)}>?"+data;
        });
    </script>
直接把查询条件,全部传值给另外一个连接
Copier après la connexion

lists est la méthode de liste de requêtes, Excel est la méthode d'exportation, appelez la méthode d'origine

Ajoutez 2 codes d'en-tête puis réécrivez le fichier html de la vue et exportez-le directement

function lists()
    {

        I("date") ? $this->date = I("date"):$this->date =date("Y-m");

        $where = $this->query();

        $model = M("project_sign");
        $model->join("JOIN  __PROJECT_USER__ on s_user_id = pu_id");
        $model->join("JOIN  __PROJECT_TEAM__ on s_team_id = t_id");
        $model->join("JOIN  __PROJECT__ on s_project_id = p_id");
        $model->order("s_id desc");
        $results = $model->where($where)->select();

        $res = array();
        foreach($results as $value)
        {
            if(!isset($res[$value[&#39;s_user_id&#39;]][&#39;info&#39;]))
            {
                $res[$value[&#39;s_user_id&#39;]][&#39;info&#39;] = $value;
            }
            if(!isset($res[$value[&#39;s_user_id&#39;]][&#39;sign&#39;]))
            {
                $res[$value[&#39;s_user_id&#39;]][&#39;sign&#39;] = array_pad(array(),32,"");
                unset($res[$value[&#39;s_user_id&#39;]][&#39;sign&#39;][0]);
            }

            $res[$value[&#39;s_user_id&#39;]][&#39;sign&#39;][$value[&#39;s_day&#39;]] = "是";
            $res[$value[&#39;s_user_id&#39;]][&#39;count&#39;]++;
        }

        $this->results = $res;
        $this->display();
    }


    function excel()
    {
        header("Content-type: application/vnd.ms-excel; charset=utf8");
        header("Content-Disposition: attachment; filename=filename.xls");
        $this->lists();
    }
Copier après la connexion

Comme l'excel exporté n'utilise pas de CSS, j'écris directement une vue tableau pure

<html>
<head>
    <meta charset="utf-8">
</head>
<body>
<table border="1" class="table table-border table-bordered table-hover table-bg">
            <tr class="text-c"  >
                <th rowspan="2" >编号</th>
                <th rowspan="2">姓名</th>
                <th rowspan="2">工种</th>
                <th colspan="31"><{$date}></th>
                <th rowspan="2">合计</th>
            </tr>
             <volist name="results" id="value" key="key">
                 <tr   class="text-c">
                    <td>1</td>
                    <td>2</td>
                    <td>3</td>
                    <td>4</td>
                    <td>5</td>
                    <td>6</td>
                    <td>7</td>
                    <td>8</td>
                    <td>9</td>
                    <td>10</td>
                    <td>11</td>
                    <td>12</td>
                    <td>13</td>
                    <td>14</td>
                    <td>15</td>
                    <td>16</td>
                    <td>17</td>
                    <td>18</td>
                    <td>19</td>
                    <td>20</td>
                    <td>21</td>
                    <td>22</td>
                    <td>23</td>
                    <td>24</td>
                    <td>25</td>
                    <td>26</td>
                    <td>27</td>
                    <td>28</td>
                    <td>29</td>
                    <td>30</td>
                    <td>31</td>
                </tr>
                <tr class="text-c">
                    <td><{$key}></td>
                    <td><{$value.info.pu_name}></td>
                    <td><{$value.info.t_name}></td>
                    <volist name="value.sign" id="v">
                        <td><{$v}></td>
                    </volist>
                    <td><{$value.count}></td>
                </tr>

            </volist>
        </table>
</body>
</html>
Copier après la connexion

Après avoir cliqué sur exporter,



s'affiche. Recommandations associées :

js pour exporter du code Excel

Comment créer ou exporter un tableau de données Excel avec PHP

Cinq méthodes JS pour exporter Excel

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal