<?php
$array = [ 1, 2, 6.1, 6.2, 6.3, 6.4, 6.5, 7, 8 ];
$result = [ ];
for( $i = 0, $size = count( $array ); $i < $size; $i ++ ) { $start = $array[ $i ];
$end = $start;
while( isset( $array[ $i + 1 ] ) && ! bccomp( $array[ $i + 1 ] - $array[ $i ], 0.1, 1 ) ) { $end = $array[ ++ $i ];
}
$result[] = $start == $end ? $start : $start . '-' . $end;
}
PD9waHAKCiRhcnJheSAgPSBbIDEsIDIsIDYuMSwgNi4yLCA2LjMsIDYuNCwgNi41LCA3LCA4IF07CiRyZXN1bHQgPSBbIF07CmZvciggJGkgPSAwLCAkc2l6ZSA9IGNvdW50KCAkYXJyYXkgKTsgJGkgPCAkc2l6ZTsgJGkgKysgKSB7Cgkkc3RhcnQgPSAkYXJyYXlbICRpIF07CgkkZW5kICAgPSAkc3RhcnQ7Cgl3aGlsZSggaXNzZXQoICRhcnJheVsgJGkgKyAxIF0gKSAmJiAhIGJjY29tcCggJGFycmF5WyAkaSArIDEgXSAtICRhcnJheVsgJGkgXSwgMC4xLCAxICkgKSB7CgkJJGVuZCA9ICRhcnJheVsgKysgJGkgXTsKCX0KCSRyZXN1bHRbXSA9ICRzdGFydCA9PSAkZW5kID8gJHN0YXJ0IDogJHN0YXJ0IC4gJy0nIC4gJGVuZDsKfQpwcmludF9yKCAkcmVzdWx0ICk7