Skip to content

Instantly share code, notes, and snippets.

@DaveDevYT
Created November 29, 2021 11:09
Show Gist options
  • Save DaveDevYT/1b71871211a96d7f5724c7ad2b06ae1f to your computer and use it in GitHub Desktop.
Save DaveDevYT/1b71871211a96d7f5724c7ad2b06ae1f to your computer and use it in GitHub Desktop.
exercise-3.php
<?php
echo '<h3>Family Tree Exercise</h3>';
$family8 = ['member1' => 'Aethelflaed', 'member2' => '???', 'offspring' => []];
$family7 = ['member1' => 'Edward', 'member2' => '???', 'offspring' => []];
$family6 = ['member1' => 'Aethelwold', 'member2' => '???', 'offspring' => []];
$family5 = ['member1' => 'Athelstan', 'member2' => '???', 'offspring' => []];
$family4 = ['member1' => 'Alfred', 'member2' => 'Ealswith', 'offspring' => [$family7, $family8]];
$family3 = ['member1' => 'Aethelred', 'member2' => 'Wulfthryth', 'offspring' => [$family6]];
$family2 = ['member1' => 'Aethelwulf', 'member2' => 'Osburga', 'offspring' => [$family3, $family4, $family5]];
$family1 = ['member1' => 'Egbert', 'member2' => 'Redburga', 'offspring' => [$family2]];
$familyTree = $family1;
function PrintFamilyTree(array $family)
{
$member1 = $family['member1'];
$member2 = $family['member2'];
echo "Family $member1 - $member2:<br/>";
if(!empty($family['offspring']))
{
echo "Offspring: ";
foreach ($family['offspring'] as $offspring)
{
echo $offspring['member1']." ";
}
echo "<br/><br/>";
foreach ($family['offspring'] as $offspring)
{
PrintFamilyTree($offspring);
}
}
else
{
echo "$member1 Offspring: none<br/><br/>";
}
}
PrintFamilyTree($familyTree);
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment