Php 从多维数组生成HTML表的更好解决方案 /** *采用einer Tabelle ausgeben mit引导风格的Assoziatives数组 *@param$array Das array *@param$style可选:Platz für weitere样式,默认值='table hover table condensed' */ 将数组关联到表的公共函数($arr,$style='table-hover table-condensed'){ //Neue Tabelle erstellen和标准样式vergeben 回声“; 回声“; //Nimmt die Keys vom erstenäußeren阵列 $keys=array_keys($arr[0]);//vorname、nachname、titel等。。。 //垂直模键 foreach($key作为$key){ 回显“$key.”; } 回声“; 回声“; foreach($arr作为$arr2){ 回声“; foreach($arr2作为$value){ 回显“$value.”; } 回声“; } 回声“; 回声“; }
此代码将多维数组转换为HTML表 我尝试了很多,也和我的兄弟一起工作,但他不能理解代码,所以 我需要一个更干净,更短的代码为我的解决方案。有什么建议吗 这是该表当前的外观:Php 从多维数组生成HTML表的更好解决方案 /** *采用einer Tabelle ausgeben mit引导风格的Assoziatives数组 *@param$array Das array *@param$style可选:Platz für weitere样式,默认值='table hover table condensed' */ 将数组关联到表的公共函数($arr,$style='table-hover table-condensed'){ //Neue Tabelle erstellen和标准样式vergeben 回声“; 回声“; //Nimmt die Keys vom erstenäußeren阵列 $keys=array_keys($arr[0]);//vorname、nachname、titel等。。。 //垂直模键 foreach($key作为$key){ 回显“$key.”; } 回声“; 回声“; foreach($arr作为$arr2){ 回声“; foreach($arr2作为$value){ 回显“$value.”; } 回声“; } 回声“; 回声“; },php,html,html-table,Php,Html,Html Table,此代码将多维数组转换为HTML表 我尝试了很多,也和我的兄弟一起工作,但他不能理解代码,所以 我需要一个更干净,更短的代码为我的解决方案。有什么建议吗 这是该表当前的外观: 代码运行良好,没有那么长,因此我认为没有必要缩短代码 但一种使其略短的方法是删除所有注释,并将一些回显字符串合并为一个字符串: 将数组关联到表的公共函数($arr,$style='table-hover table-condensed'){ 回声“; $keys=array_keys($arr[0]);//vorname、
代码运行良好,没有那么长,因此我认为没有必要缩短代码 但一种使其略短的方法是删除所有注释,并将一些回显字符串合并为一个字符串:
将数组关联到表的公共函数($arr,$style='table-hover table-condensed'){
回声“;
$keys=array_keys($arr[0]);//vorname、nachname、titel等。。。
foreach($key作为$key){
回显“$key.”;
}
回声“;
foreach($arr作为$arr2){
回声“;
foreach($arr2作为$value){
回显“$value.”;
}
回声“;
}
回声“;
}
代码是否存在实际问题,或者您只是希望代码更短?在我看来,它已经相当简洁了,根据我的经验,构建表格是这样的。你当然可以把它缩短,但你会牺牲可读性。实际上没有问题,我只是想看看一个解决方案如何从一个有经验的程序员那里变得更好,并从中学习。你明白上面的代码在做什么吗?我不知道CodeReview,但谢谢大家花时间。如果迁移到CodeReview可行,我希望有这个。
/**
* Assoziatives Array in einer Tabelle ausgeben mit Bootstrap Styles
* @param $array Das Array
* @param $style Optional: Platz für weitere Stylings, default = 'table-hover table-condensed'
*/
public function assoc_array_to_table($arr, $style ='table-hover table-condensed'){
// Neue Tabelle erstellen und Standartstyling vergeben
echo "<table class='table " . $style . "'>";
echo "<thead>";
// Nimmt die Keys vom ersten äußeren Array
$keys = array_keys($arr[0]); //vorname, nachname, titel, etc...
// Verteilt die Keys als Überschriften
foreach($keys as $key){
echo "<th>". $key ."</th>";
}
echo "</thead>";
echo "<tbody>";
foreach($arr as $arr2) {
echo "<tr>";
foreach($arr2 as $value){
echo "<td>" . $value . "</td>";
}
echo "</tr>";
}
echo "</tbody>";
echo "</table>";
}