Ver Mensaje Individual
  #4 (permalink)  
Antiguo 25/02/2014, 07:04
venezonano_ita
 
Fecha de Ingreso: diciembre-2012
Mensajes: 11
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Modificar Array PHP

Buen Día, disculpen por no haberme hecho entender.

Tratare de explico mejor. tengo un array PHP que se llama form, este array es multidimensional este array es dinámico es decir, según la llamada a la base de dato va a tener información distinta.

Tenemos la exigencia que ciertos valores en este array dedan tener la traduccion a segun del usuario que se conecta con la aplicacion. por esto hice la funcion extracttag, que en realidad lo que hace es recibir el valor de la key que lee el foreach y lo busca en un archivo xml donde tengo la traducción del idioma del usuario.

la funcion recorro, recoore el array y lo que hice fue agregar un IF donde compruebo que el valor de la Key en el punto donde esta el foreach se encuentre en el archivo xml del lenguage del usuario si se encuentra entonce deberia cambiarme el valor en el array que el forearh me esta leyendo

aqui abajo el codigo
<?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);
}
recorro($form);
echo \’<pre>\’; // Esto para que sea mas legible
var_dump($form);
echo \’</pre>\’;