<?php

$array = array(array('nome' => 'Luis', 'id' => 1), array('nome' => 'Rui', 'id' => 2));

function recurse($array, $retorno){

    foreach ($array as $key => $item) {
        if (is_array($item)) $interno[] = recurse($item, $retorno);
        else if ($key == 'nome') $interno[] = $item;
    }
    if (count($retorno)) $retorno = array_merge($interno, $retorno);
    else $retorno = $interno;
    return $retorno;
}

var_dump(recurse($array, array()));