【问题标题】:How to Add HTML in controller Codeigniter?如何在控制器 Codeigniter 中添加 HTML?
【发布时间】:2019-03-07 04:00:57
【问题描述】:

我在 codeIgniter 中的内容控制器:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class AutoLoadDiv extends CI_Controller {

    public function __construct()
    {
        parent::__construct();
    }

    public function index()
    {
        $this->load->view('ngoding/AutoLoad');
    }

    public function getData() {

        $this->load->library('table');
        $err = file_get_contents("application\logs\log.php");
        $filestr = preg_replace(array('/(^|\R)ERROR\s*-\s*/', '/(^|\R)(.*?)\s*-->\s*/'), array('$1', '$1$2 '), $err);
        $arraySpacing = nl2br($filestr);
        $arr = explode("\n", $arraySpacing);

        for ($i = count($arr)-1; $i >= 0; $i--) {
            echo "<html><body><table><tr><td>$arr[$i];</td></tr></table></body>/html>";
        }
      }
  }

我在控制器中制作表格时遇到问题,我想打印这样的表格:

我有意见:

https://codeshare.io/GqyWmk

【问题讨论】:

  • 你需要重新评估你使用这个框架的方法,在任何情况下你都不应该把html放在控制器中。

标签: php html css codeigniter


【解决方案1】:

要打印图像中的表格,您需要像这样更改代码。

假设文件中只有 4 列:

   $output = "<html><body><table>"; // Keep this outside for loop to print only once.


   var $j = 0;
   for ($i = count($arr)-1; $i >= 0; $i--) {

      if ($j % 4 == 0) {
          $output.="<tr>";
      }
      $output.="<td>$arr[$i]</td>"; // Adding new row in your output varible.
      if ($j % 4 == 0) {
         $output.="</tr>";
      }
     ++$j;
     }
        $output.="</table></body>/html>"; // This should also be outside because you want to close table, body and html only once.
        echo $output; // Printing your final data.

您可以根据需要修改此代码;

【讨论】:

  • 如果没有固定的列,那么您可以添加 if 条件来创建新行。
  • 如何在控制器中添加样式来制作边框表格?
  • 您的第一个代码工作打印如下:ibb.co/idCyjK,但我想添加每行不同的背景颜色,如下所示:ibb.co/jUn9rz 如何使每行的背景颜色不同?
  • 你试过上面的代码吗?您只想为奇数行和偶数行着色吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-30
  • 1970-01-01
  • 1970-01-01
  • 2012-12-19
  • 1970-01-01
  • 2016-03-15
相关资源
最近更新 更多