matriz php a xml usando recursión
Frecuentes
Visto 65 equipos
-1
Me gustaría que mi función convierta una matriz de dimensión N a xml, pero no funciona. ¿Alguien puede señalarme en la dirección correcta?
function arrayToXml($array,$render = ""){
if(!is_array($array)){
return $array;
}
foreach ($array as $key => $value) {
if(is_array($value)){
$render .= '<' . $key . '>';
arrayToXml($value,$render);
}
else {
$render .= '<' . $key . '>';
$render .= $value;
$render .= '</' . $key . '>';
}
}
return $render;
}
Vale, he encontrado la solución:
function arrayToXml($array,$render = ""){
if(!is_array($array)){
return $array;
}
foreach ($array as $key => $value) {
if(is_array($value)){
$render .= '<' . $key . '>';
$render = arrayToXml($value,$render);
$render .= '</' . $key . '>';
}
else {
$render .= '<' . $key . '>';
$render .= $value;
$render .= '</' . $key . '>';
}
}
return $render;
}
1 Respuestas
1
No está utilizando el valor de retorno de arrayToXml($value,$render);
, pero necesita asignarlo a $render
.
// …
if(is_array($value)){
$render .= '<' . $key . '>';
$render .= arrayToXml($value,$render);
}
También tenga en cuenta que se pueden encontrar toneladas de secuencias de comandos listas para usar en la web para traducir una matriz de PHP a XML. Por ejemplo http://snipplr.com/view/3491/.
Respondido 31 Jul 12, 14:07
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas php or haz tu propia pregunta.
Defina "no funciona". ¿Qué hace, qué esperas en su lugar? - deceze
ACTUALIZAR no puede funcionar, ya que está sobrescribiendo
$render
si el hijo es una matriz... - feeela@feeela, funciona para mí, compruébalo. - Alon