php使用表格格式从txt文件生成foreach循环中的数据

时间:2016-11-30 03:35:15

标签: php

我曾尝试从php foreach循环生成txt文件, 它的工作原理但结果并不像在这里使用表那样平行:

我的期望是这样的:

这是我的代码:

        $output[] = ''."\n".'';
    $output[] = '  No  '.'                    Name Product                    '.'    Total   '."\n".'';
    foreach($query->result() as $row){
       $results = $row->id_product; 
       $product = $this->db->query("select product_name from master_product WHERE product_id='".$results."'");
       $product_name = $product->row()->product_name;
       $output[] = '  '.$no.str_repeat(" ",20).''. $product_name.str_repeat(" ",20).''.$row->quantity.'  '.$row->scale."\n".'';
       $no++;
    }
    file_put_contents(APPPATH."txt/test.txt", $output);

请有人帮帮我。

1 个答案:

答案 0 :(得分:0)

为什么不实现这样的功能:

function padColumnText($text, $colWidth)
{
    if (strlen($text) > $colWidth)
    {
        return substr($text, 0, $colWidth);
    }
    return $text . str_repeat(" ", $colWidth - strlen($text));
}

然后,只要你想要打印一列,就这样做:

output[] = padColumnText($no, 5) . padColumnText($product_name, 20) ...

我假设您希望将其打印到某种具有固定宽度字体的纯文本文件中。如果您正在为网络做某事,这是错误的方法(您应该使用HTML进行格式化)。