Aşağıdaki gibi bir php koduyla iç içe bir dizi yapısını yani array() değerini yazdırabiliriz.
<?php
$data = array(
'WebDevelopment' => array(
'Frontend' => array(
'HTML' =>'Hypertext Markup Langauge' ,
'CSS' => 'Cascading style sheet',
'Js' => 'Java Script'
),
'Backend' => array(
'PHP' => 'Hypertex Preprocessor',
'Ajax'=> 'Asynchronus Js and Xml' )
)
);
foreach ($data as $subject => $course) {
echo "$subject";
foreach ($course as $part => $value) {
echo "$part";
foreach ($value as $Langauge => $description) {
echo "$Langauge : $description";
}
}
}
?>
Fonksiyon beliyleyelim
Aynı zamanda bu dizi yapısını bir tablo halinde de yazdırabiliriz. Öncelikle bu fonksiyonu kullanabiliriz.
Dikey (Vertical)
function build_table($array){
// start table
$html = '<table>';
// header row
foreach($array[0] as $key=>$value){
$html .= '<tr>';
$html .= '<th>' . htmlspecialchars($key) . '</th>';
// data rows
$html .= '<td>' . $value . '</td>';
$html .= '</tr>';
}
// finish table and return it
$html .= '</table>';
return $html;
}
Yatay (Horizontal)
<?php
function build_table($array){
// start table
$html = '<table>';
// header row
$html .= '<tr>';
foreach($array[0] as $key=>$value){
$html .= '<th>' . htmlspecialchars($key) . '</th>';
}
$html .= '</tr>';
// data rows
foreach( $array as $key=>$value){
$html .= '<tr>';
foreach($value as $key2=>$value2){
$html .= '<td>' . htmlspecialchars($value2) . '</td>';
}
$html .= '</tr>';
}
// finish table and return it
$html .= '</table>';
return $html;
}
Şimdi de bu bu fonksiyonu yazdıralım. Dikkat ettiyseniz fonksiyon dikey yani vertical yapıda oluşturuldu.
echo build_table($array);