Gracias sergiold por la idea.
Sin embargo, como mi problema requería que la función fuera recursiva aquí va mi propuesta:
Código PHP:
function array_switch( $array_a_cambiar, $array_cambios )
{
$nuevoArray = array();
for( $index = 0; $index < count($array_a_cambiar); $index++)
{
if( is_array($array_a_cambiar[$index]) )
{
array_push( $nuevoArray, array_switch( $array_a_cambiar[$index], $array_cambios ));
}
else
{
$nuevoArray[$index] = $array_cambios[$array_a_cambiar[$index]];
}
}
return $nuevoArray;
}