<?php
$one = array('start' => '2012-10-12', 'stop' => '2012-11-04', 'over' => true);
$two = array('start' => '2012-10-29', 'stop' => '2012-11-14', 'over' => false);
$three = array('start' => '2012-11-12', 'stop' => '2012-12-07', 'over' => false);
$array = array($one, $two, $three);
print_r($array);
foreach($array as $key=>$val)
{
if(isset($array[$key+1]) && $array[$key+1]['over'] == true)
$array[$key]['stop'] = date('Y-m-d', strtotime($array[$key+1]['start'] .' -1 day'));
if(isset($array[$key-1]) && $array[$key-1]['over'] == true)
$array[$key]['start'] = date('Y-m-d', strtotime($array[$key-1]['stop'] .' +1 day'));
}
print_r($array);