Foros del Web » Programando para Internet » PHP »

copiar contenido de un objeto

Estas en el tema de copiar contenido de un objeto en el foro de PHP en Foros del Web. Buenos dias, estoy parseando un XML con la funcion SimpleXMLElement El problema es que el contenido de uno de los nodos lo quiero guardar para ...
  #1 (permalink)  
Antiguo 09/08/2010, 06:47
 
Fecha de Ingreso: mayo-2009
Mensajes: 14
Antigüedad: 15 años, 6 meses
Puntos: 0
copiar contenido de un objeto

Buenos dias, estoy parseando un XML con la funcion SimpleXMLElement

El problema es que el contenido de uno de los nodos lo quiero guardar para machacarlo y añadirselo al nodo siguiente, pero cuando machaco el nodo del que he echo la copa, esa copia que he echo "auxNombre" se machaca tamb.

$library = new SimpleXMLElement('1.xml', null, true);
foreach( $library->entrada as $book ) {
if ($primeraPasada < $demas){

$auxNombre= $book->nombreS ; // Aqui auxNombre vale Camion
$auxLink=$book->link;
$auxCapi=$book->capitulo;


$book->nombreS = "Prueba";
$book->link = "link prueba";
$book->capitulo = "capitulo prueba";

}
else
{
echo $auxNombre; <--- Ahora vale "prueba";
}

Como puedo solucionarlo???
Gracias.
  #2 (permalink)  
Antiguo 09/08/2010, 07:48
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: copiar contenido de un objeto

¿Qué significa para ti machacar? Si se refiere a que sobre-escribe la variable, tendrás que usar addChild o sencillamente ingresarlo en un array para después trabajarlo.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 09/08/2010, 09:14
 
Fecha de Ingreso: mayo-2009
Mensajes: 14
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: copiar contenido de un objeto

Bueno dias, cuando digo machacar es sobre-escribir con otra informacion.
No , no me has entendido, yo quiero que en mi xml siempre haya maximo 6 nodos, si hago un addchild vas a crear otro (si mal no tengo entendido).


El problema es que he intentado meterlo en mil sitios (por desesperacion), desde una variable normal como he puesto en el ejemplo, hasta crear una clase y meterlo dentro de una varible. Pero nada siempre me sale como si apuntara a la variable inicial y cuando sobreescribo en la variable "$book->nombreS ", la variable auxiliar se sobreescribe tambien.

Gracias.
  #4 (permalink)  
Antiguo 09/08/2010, 12:05
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: copiar contenido de un objeto

Puedes usar un array como te indiqué.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 09/08/2010, 13:16
 
Fecha de Ingreso: mayo-2009
Mensajes: 14
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: copiar contenido de un objeto

Cita:
Iniciado por abimaelrc Ver Mensaje
Puedes usar un array como te indiqué.
Meterlo en un array no es problema, la cosa es a que te refieres con trabajarlo porque yo ya he probado todo, y se me han acabado las ideas.
  #6 (permalink)  
Antiguo 09/08/2010, 13:20
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 5 meses
Puntos: 1517
Respuesta: copiar contenido de un objeto

Algo así
Código PHP:
Ver original
  1. $arr = array();
  2. $arr[] = 'foo';
  3. $arr[] = 'bar';
  4. $arr[] = 'baz';
  5. echo implode(PHP_EOL, $arr);
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Etiquetas: contenido, copiar, objeto
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:24.