gpt4 book ai didi

php - 破译一个函数

转载 作者:可可西里 更新时间:2023-10-31 22:08:11 25 4
gpt4 key购买 nike

不久前,这个功能被发布在一个问题的答案中。作为一名学习者,我有兴趣了解该功能。但是,我无法让它按原样工作。发帖人并没有说他已经测试了这个功能,所以它可能是一个“概念”帖子,意在指明方向。 OTOH,我可能没有正确调用它。请帮忙,因为我花了一些时间试图理解它。

($data 数组是我为了运行函数而放入的数组。)

<?php

$data = array("a" => "January", "b" => "February", "c" => "March" );

render_table ( $data ) ;
echo $html ;

//===========================================

function render_table($data) {
$html = '<table>';
$tr = array();
foreach (array_keys($data[0]) as $key) {
$tr[] = '<th>' . htmlspecialchars($key) . '</th>';
}
$html .= "\n" . '<thead>' . "\n" . '<tr>' . "\n" . implode("\n", $tr) . '</tr>' . '</thead>';
$tbody = array();
foreach ($data as $row) {
$tr = array();
foreach ($row as $value) {
$tr[] = '<td>' . htmlspecialchars($value) . '</td>';
}
$tbody[] = '<tr>' . "\n" . implode("\n", $tr) . '</tr>';
}
$html .= "\n" . '<tbody>' . "\n" . implode("\n", $tbody) . '</tbody>';
$html .= '</table>';
return $html;
}

?>

最佳答案

首先,您的数据有误。该函数采用数组数组作为参数。

注意这行

  foreach (array_keys($data[0]) as $key) {

...这个函数调用也是错误的;它不应该采用第一个元素,它应该采用整个数组,因为它使用的是数组中的键。

试试这个:首先,将对 array_keys 的调用更改为使用整个数组,即

foreach(array_keys($data AS $key)

然后改变你的输入,函数调用:

$data= array(
'data1' => array('one','two','three'),
'data2' => array('four','five','six'),
'data3' => array('seven','eight','nine')
);
echo render_table($data);

关于php - 破译一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2128298/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com