| Autor | Zpráva | ||
|---|---|---|---|
| Ricky4852 Profil |
Zdravim,
pokúšam sa o debug pomocou HTML tabuľky, ktorú vygenerujem pomocou array polí v PHP, zväčša mi to funguje správne, až na jeden detail, s ktorým si neviem rady. Prikladám obrázok kde je to znázornené lepšie.
Inak povedané, v čase keď sa key 0 vyhodnotil že mu patrí ďalšie array pole, vykreslí sa jeho hodnota ako nový tr riadok, dalo by sa nejak ten kód upraviť, aby pole začalo vypisovať hneď vedľa bunky key 0, ako je na tom druhom obrázku ? Prehľadal som už nespočet stránok na google, ale toto je to najvhodnejšie čo som mohol získať, aktuálne skripty ktoré používam sú tu: $array['id'] = 5;
$array['text'] = "Mein Text";
$array['comments'] = array(5, 4, array(
'Comic' => array(
'Title'=>'Superman',
'Author'=>'Jerry Siegel and Joe Shuster',
'Publication Date' => '1938'),
'Science Fiction' => array(
'Title'=>'Dune',
'Author'=>'Frank Herbert',
'Publication Date'=>'1965'),
'Fantasy' => array(
'Title'=>'The Hobbit',
'Author'=>'J.R.R. Tolkien',
'Publication Date'=>'1937'),
'Horror' => array(
'Title'=>'Carrie',
'Author'=>'Stephen King',
'Publication Date'=>'1974')
),23);
$array['author'] = "ich";
html_show_array($array);
function do_offset($level){
$offset = ""; // offset for subarry
for ($i=1; $i<$level;$i++){
$offset = $offset . "<td></td>";
}
return $offset;
}
function show_array($array, $level, $sub){
if (is_array($array) == 1){ // check if input is an array
foreach($array as $key_val => $value) {
$offset = "";
if (is_array($value) == 1){ // array is multidimensional
echo "<tr>";
$offset = do_offset($level);
echo $offset . "<td>" . $key_val . "</td>";
show_array($value, $level+1, 1);
}
else{ // (sub)array is not multidim
if ($sub != 1){ // first entry for subarray
echo "<tr nosub>";
$offset = do_offset($level);
}
$sub = 0;
echo $offset . "<td main ".$sub." width=\"120\">" . $key_val .
"</td><td width=\"120\">" . $value . "</td>";
echo "</tr>\n";
}
} //foreach $array
}
else{ // argument $array is not an array
return;
}
}
function html_show_array($array){
echo "<table cellspacing=\"0\" border=\"2\">\n";
show_array($array, 1, 0);
echo "</table>\n";
} |
||
|
Časová prodleva: 12 let
|
|||
0
