Gebruiker:1Veertje/adres script

//get addressees from db
while($row = $result2->fetch_assoc()) {
  			if (!(isset($double[ucwords($row['straat'])]) && in_array($row['hnr'].$row['hnr2'], $double[ucwords($row['straat'])]))){
  				$adres[ucwords($row['straat'])][] = array($row['hnr'], $row['hnr2']);
  				$double[ucwords($row['straat'])][] = $row['hnr'].$row['hnr2'];
  			}
}

	$printAdress = '';
		foreach ($adres as $key => $value) {
			$printAdress .= $key;
			$complete = false;
			$hyphen = false;

			for ($i=0; $i < count($value); $i++) { 
				if ($i == 0){
					$hyphen = false;
					$complete = false;
					$closed = true;
					$printAdress .= " ".$value[$i][0].$value[$i][1];

				}
				else{
					if ($last[0]+2 == $value[$i][0] ){

						if ($complete){
							$printAdress .= $last[0].$last[1].", ".$value[$i][0].$value[$i][1];
							$complete = false;
							$closed = true;
						}
						elseif (!$hyphen){
							$printAdress .= "-";
							$hyphen = true;
							$closed = false;

						}



					}
					elseif ($last[0]+1 == $value[$i][0]){
						if ($hyphen){
							$printAdress .= $last[0].$last[1].", ".$value[$i][0].$value[$i][1];
							$closed = true;
							$hyphen = false;
						}
						elseif (!$complete){
							$printAdress .= " t/m ";
							$complete = true;
							$closed = false;
						}
						
						
					}
					elseif ($last[0] == $value[$i][0]){
						if (!$hyphen){
							$printAdress .= "-";
							$hyphen = true;
							$closed = false;
						}
					}
					else{
						if ($i != 1){
							$printAdress .= $last[0].$last[1];
							$closed = true;
						}
						$printAdress .=", ".$value[$i][0].$value[$i][1];
						$closed = true;
						$complete = false;
						$hyphen = false;
					}

				}
				$last = $value[$i];
			}
			if (!$closed){
				$printAdress .= $last[0].$last[1];
			}
			$printAdress .=", &lt;br/&gt;"	;
    			
		}
		$printAdress = substr($printAdress, 0, -13);