public function getRange_($start, $end) {
		$ret = new PrettyArray();
		$collecting = false;
		$start = (string)$start;
		$end = (string)$end;
		foreach($this->data as $key => &$value) {
			$key = (string)$key;
			if($start == $key || $collecting) {
				$collecting = true;
				$ret->setByReference($key, $value);
				if($end == $key) {
					break;
				}
			}
		}
		return $ret;
	}
public function getRange_($start, $end) {
		$ret = new PrettyArray();
		$collecting = false;
		$start = (string)$start;
		$end = (string)$end;
		foreach($this->data as $key => &$value) {
			$key = (string)$key;
			if($start == $key || $collecting) {
				$collecting = true;
				$ret->setByReference($key, $value);
				if($end == $key) {
					break;
				}
			}
		}
		return $ret;
	}
public function getRange_ ( $ start , $ end ) { $ ret = new PrettyArray ( ) ; $ collecting = false ; $ start = ( string ) $ start ; $ end = ( string ) $ end ; foreach ( $ this -> data as $ key => & $ value ) { $ key = ( string ) $ key ; if ( $ start == $ key || $ collecting ) { $ collecting = true ; $ ret -> setByReference ( $ key , $ value ) ; if ( $ end == $ key ) { break ; } } } return $ ret ; }
Will get a 'range' from PrettyArray. Calling it destructively will force the return value to be references to the current PrettyArray.

<code>
$arr = new PrettyArray(['swamp', 'desert', 'snow', 'rain', 'fog']);
$arr->getSet(1,3); // [ 1 => desert, 2 => snow, 3 => rain]
</code>

<code>
$arr = new PrettyArray();
$arr['nasty'] = 'swamp';
$arr['hot'] = 'desert';
$arr['cold'] = 'snow';
$arr[] = 'rain';
$arr[] = 'fog';

$o = $arr->getRange('hot', 0)->to_a();
print_r($o);
</code>
<pre>
Array
(
[hot] => desert
[cold] => snow
[0] => rain
)
</pre>

@param mixed $start
@param mixed $end
@return PrettyArray
Will get a range from PrettyArray . Calling it destructively will force the return value to be references to the current PrettyArray .