usar Highlight ayuda a entenderr mas el codigo
aun asi con lo que descrives no entiendo??????
trate de revisar tu codigo pero esta mas enredado que la explicacion.
asi se ordena el codigo
Código PHP:
<?php
$userlang = //codigo script que busca en la base de datos la informacion del idioma del usuario…..
$form[0] = $base; //array php
$form[1] = $array1; //array php
$form[2] = $array2; //array php
function extracttag($namefile, $name)
{
$file1 = $namefile.".xml";
$file2 = $namefile.".xml";
if (file_exists($file1)){
$newtag = simplexml_load_file($file1);
if ($newtag){
foreach ($newtag->tag as $a){
if ($a->tag_l == $name){
return $a->translations;
}
}
return $a;
}else{
return "";
}
}elseif (file_exists($file2)){
$newtag = simplexml_load_file($file2);
if ($newtag) {
foreach ($newtag->tag as $a) {
if ($a->tag_l == $name) {
return $a->translations;
}
}
return $a;
}else{
return "";
}
}else{
echo "Error_open_xml";
}
}
function recorro($matriz){
foreach($matriz as $key=>$value){
if (is_array($value)){
//si es un array sigo recorriendo
recorro($value);
}else{
//si es un elemento lo muestro
$tagvalue = extracttag($userlang, $value);
if ($tagvalue != ""){
$value = $tagvalue; $matriz[$key] = $tagvalue;
}
}
}
return($matriz);
}
$form=recorro($form);
echo "<pre>"; // Esto para que sea mas legible
var_dump($form);
echo "</pre>";