Il y a peu de temps, cette fonction était affichée dans une réponse à une question. En tant qu'apprenant, je suis intéressé à comprendre la fonction. Cependant, je ne peux pas le faire fonctionner tel quel. L'affiche ne disait pas qu'il avait testé la fonction, donc cela aurait pu être un message «conceptuel», destiné à montrer la direction. OTOH, je ne peux pas l'invoquer correctement. S'il vous plaît aidez-moi car j'ai passé du temps à essayer de le comprendre.Déchiffrer une fonction
(le tableau de données $ est celui que je viens de mettre pour exécuter la fonction.)
<?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;
}
?>
Oui! Cela fait l'affaire. Je n'avais pas réalisé que la fonction était destinée à fonctionner sur des réseaux multi-dim. Donc, les erreurs étaient 1. comment j'ai essayé d'appeler la fonction; 2. J'ai fourni le type incorrect de tableau; et 3. la ligne: foreach (array_keys ($ data AS $ key) Merci beaucoup! – dave