/** * Age in year of first marriage * * @param int $z_axis * @param int[] $z_boundaries * @param Stats $stats * * @return int */ function age_at_first_marriage($z_axis, array $z_boundaries, Stats $stats) { $total = 0; if ($z_axis === 300) { $num = $stats->statsMarrAgeQuery(false, 'M'); $indi = array(); foreach ($num as $values) { if (!in_array($values['d_gid'], $indi)) { fill_y_data(0, (int) ($values['age'] / 365.25), 1); $total++; $indi[] = $values['d_gid']; } } $num = $stats->statsMarrAgeQuery(false, 'F'); $indi = array(); foreach ($num as $values) { if (!in_array($values['d_gid'], $indi)) { fill_y_data(0, (int) ($values['age'] / 365.25), 1); $total++; $indi[] = $values['d_gid']; } } } elseif ($z_axis === 301) { $num = $stats->statsMarrAgeQuery(false, 'M'); $indi = array(); foreach ($num as $values) { if (!in_array($values['d_gid'], $indi)) { fill_y_data(0, (int) ($values['age'] / 365.25), 1); $total++; $indi[] = $values['d_gid']; } } $num = $stats->statsMarrAgeQuery(false, 'F'); $indi = array(); foreach ($num as $values) { if (!in_array($values['d_gid'], $indi)) { fill_y_data(1, (int) ($values['age'] / 365.25), 1); $total++; $indi[] = $values['d_gid']; } } } else { $zstart = 0; $indi = array(); foreach ($z_boundaries as $boundary) { $num = $stats->statsMarrAgeQuery(false, 'M', $zstart, $boundary); foreach ($num as $values) { if (!in_array($values['d_gid'], $indi)) { fill_y_data($boundary, (int) ($values['age'] / 365.25), 1); $total++; $indi[] = $values['d_gid']; } } $num = $stats->statsMarrAgeQuery(false, 'F', $zstart, $boundary); foreach ($num as $values) { if (!in_array($values['d_gid'], $indi)) { fill_y_data($boundary, (int) ($values['age'] / 365.25), 1); $total++; $indi[] = $values['d_gid']; } } $zstart = $boundary + 1; } } return $total; }