<?php
	function sorted($a){
		if(count($a)<2){
			return $a;
		} else {
			$l = array();
			$r = array();
			$med = $a[round((count($a)-1)/2)];
			
			foreach ($a as $v){
				if ($v < $med)
					$l[] = $v;
				else
					$r[] = $v;
			}
			
			return array_merge(sorted($l), sorted($r));	
		}
	}
	
	$a = array(11,1,23,45,7,12,4,6,8,43);
	$a = sorted($a);
	print_r($a);