我需要为一些mysql查询创建excel导出和导出到pdf选项,并将其提供给用户。
而且,用户也需要在我的网站上查看查询结果。
因此,在本例中,会出现代码冗余,因为我必须创建三个php代码文件:
One让用户直接在我的网站上查看查询结果,
其他查询结果,让用户将相同的查询结果导出到Excel,
最后一个,让用户将相同的查询结果导出到PDF
这三个文件都有相同的代码,唯一的区别是将数据发送到excel或pdf。
我如何消除这种代码重复,是否有某种方式,我可以使用只有一个文件,并使用它的所有目的,查看,导出到pdf和导出到excel。
发布于 2012-01-27 08:48:05
“是一种我只能使用一个文件并用于所有目的的方法,用于查看、导出到pdf和导出到excel。”我认为答案是肯定的。
您需要放置一个复选框,以便用户可以以特定的方式查看特定的代码。请参阅下面的示例代码。
<select name="viewoption" id="viewoption">
<option value="view">Page view</option>
<option value="xls">Export in Excel</option>
<option value="pdf">Export in PDF</option>
</select>然后,在操作页面上,您只需要检查$_POST['viewoption']的值,并根据需求放置(如果条件为)。
如果有任何查询,这可能有助于you.let我知道。
谢谢。
发布于 2012-01-27 09:06:53
正如另一位评论者所指出的,您应该拆分您的功能。处理它的方法如下
1)有一个从数据库中获取数据的函数(这将是您的模型)
2)有另一个函数来格式化这些数据(计算行尾的总计或其他什么),并选择要使用的视图(这将是您的控制器)。
3)具有另一个专门显示数据的功能(因此,您将有一个PDF视图,一个用于XLS,另一个用于web)
另外,请遵循comment中的以下建议
发布于 2012-01-27 08:42:47
将所有代码放入一个文件中。使用$_GET['format']来决定您是否需要将格式设置为PDF或excel,默认的是网页选项。
<?php
if($_GET['format'] == "pdf")
{
// export as PDF
}
elseif($_GET['format'] == "excel")
{
// export as excel
}使用指向以下页面的超链接:
http://www.site.com/page.php?format=pdf
http://www.site.com/page.php?format=excel
http://www.site.com/page.php //webpagehttps://stackoverflow.com/questions/9030664
复制相似问题