【发布时间】:2013-07-31 14:49:34
【问题描述】:
我正在使用 codeigniter 生成一个 html 表以插入到模板视图中。不幸的是,这是一条很长的字符串,例如:
<table id="myDataTable" class="table table-bordered table-striped" style="clear: both"><tbody><tr><td>id</td><td><a href="#" id="id" data-type="text" data-pk="2" data-url="/post" data-title="id">2</a></td></tr><tr><td>email</td><td><a href="#" id="email" data-type="text" data-pk="2" data-url="/post" data-title="email">A@B.COM</a></td></tr><br><tr><td>notes</td><td><a href="#" id="notes" data-type="text" data-pk="2" data-url="/post" data-title="notes">notes go here</a></td></tr><br> ...
我希望它看起来更像:
<tr>
<td>field1</td>
<td><a href="#" id="field1" data-type="select" data-pk="1" data-value="" data-original-title="Select field1"></a></td>
<td><span class="muted">Select, loaded from js array. Custom display</span></td>
</tr>
<tr>
<td>field2</td>
<td><a href="#" id="field2" data-type="select" data-pk="1" data-value="" data-original-title="Select field2"></a></td>
<td><span class="muted">Select, loaded from js array. Custom display</span></td>
</tr>
这是我的代码:
$string='<table id="myDataTable" class="table table-bordered table-striped" style="clear: both"><tbody>';
foreach ($array as $key => $value) {
$string=$string."<tr><td>$key</td>";
$element='<td><a href="#" id="'.$key.'" data-type="text" data-pk="'.$rowID.'" data-url="/post" data-title="'.$key.'">'.$value.'</a>'.'</td></tr>'."<br>";
$string=$string.$element;
}
$string=$string.'</tbody></table>';
我该如何解决这个问题?
【问题讨论】:
-
为什么用 PHP 生成 HTML? CodeIgniter 允许您分离视图、控制器和模型,这有助于您将 PHP 在视图中的使用保持在最低限度。你可以试试
<td><?php echo $yourValue; ?></td>。使用它,您可以在视图中正常缩进大部分 HTML,而不必为\n\t烦恼。你所做的并没有错,但对我来说,它似乎与 CodeIgniter 背道而驰(我个人觉得以这种方式生成 HTML 相当难看)。 -
它有什么区别?...如果要检查输出,请使用浏览器控制台,将全部组织成树
标签: php html codeigniter