<?php

$baseArr = array(
    'id' => 50575,
    'name' => 'Funbox - Pirates and Princesses',
    'venue_id' => 3248
);

$listArr = array
(
    0 => array
        (
            'id' => 53295,
            'name' => 'Funbox - Pirates and Princesses',
            'venue_id' => 2954
        ),

    1 => array
        (
            id => 53323,
            'name' => 'Funbox - Pirates and Princesses',
            'venue_id' => 2954
        ),

    2 => array
        (
            'id' => 53391,
            'name' => 'Funbox - Pirates and Princesses',
            'venue_id' => 3248
        ),
    3 =>    array(
    'id' => 50575,
    'name' => 'Funbox - Pirates and Princesses',
    'venue_id' => 3248
),
    );
    
    function sortArr($haystack, $needle){
    	$out = array();
    	
    	foreach ($haystack as $index => $arr){
    		if ($arr == $needle){
    			$out["$index".""] = $arr;
    			unset ($haystack[$index]);
    			break;
    		} 
    	}
    	foreach ($haystack as $index => $arr){
    		if ($arr['venue_id'] == $needle['venue_id']){
    			$out["$index"] = $arr;
    			unset($haystack[$index]);
    		}
    	}
    	if (is_array($haystack)){
    		return array_merge($haystack, $out);
    	}
    	
    }
    	
    	
    	
    	
    	
    	
    	
    	
    	
    	
    	
    	
    	
    	
    	
    	
    	
    	
    	
    	
    
    echo "<pre>";
    print_r(sortArr($listArr, $baseArr));