Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   PHP (https://www.clubdelphi.com/foros/forumdisplay.php?f=15)
-   -   XML en php4 (https://www.clubdelphi.com/foros/showthread.php?t=50068)

mcalmanovici 07-11-2007 15:14:45

XML en php4
 
Hola gente:
aprovecho para hacerles una consulta ya varias veces me han salvado en muchas cosas que pregunte.
Tengo que trabajar con archivos XML en php4.
Y dispongo del siguiente código.

Código PHP:

function CreateTRA()
{
  $TRA = new SimpleXMLElement(
    '<?xml version="1.0" encoding="UTF-8"?>' .
    '<loginTicketRequest version="1.0">'.
    '</loginTicketRequest>');
  $TRA->addChild('header');
# Now we extract the distinguished name from the CERT and we re-order it
# according to RFC 2253, that is what WSAA expects to receive.
  $certdata=openssl_x509_parse(file_get_contents(CERT));
  $DN="";
  foreach ($certdata['subject'] as $key => $value)
    {
      if ($DN != "") $DN=",".$DN;
      $DN=$key."=".$value.$DN;
    }
  $TRA->header->addChild('source',$DN);
  $TRA->header->addChild('destination',DESTINATIONDN);
  $TRA->header->addChild('uniqueId',date('U'));
  $TRA->header->addChild('generationTime',date('c',date('U')-600));
  $TRA->header->addChild('expirationTime',date('c',date('U')+600));
  $TRA->addChild('service',SERVICE);
  $TRA->asXML('TRA.xml');
}

Buscando en internet me di cuenta que la función new SimpleXMLElement es de php5, mi pregunta apunta a sí puedo hacer lo mismo que esta sentencia pero en php4. Estoy trabajando sobre un servidor linux, Apache 2.0 Handler y
PHP Version 4.3.10-19.

Agradezco cualquier ayuda que me pueda guiar.
Muchas gracias.
Mariano.

dec 07-11-2007 23:43:27

Hola,

"SimpleXMLElement" es una clase, hasta ahí llegamos. He tratado de encontrar referencias a esta clase en el manual de PHP, pero, las encuentro a la extensión "SimpleXML", que, efectivamente, viene de serie en PHP5, y parece que necesita de esta versión de PHP para funcionar.

Pero, no parecen la misma cosa. Se encuentran referencias a "SimpleXML", pero, no exactamente a "SimpleXMLElement". Esto me hace pensar que tal vez sea una clase de terceros, no incluida en PHP, propiamente. Y, en todo caso, se me ocurre que tal vez pudieras utilizar alguna clase (que seguro que las hay) que te echara una mano.

Y, cuando no, a las malas... tal vez, digo, tal vez, podrías escribir el XML "a mano". Al fin y al cabo hablamos de cadenas de caracteres con un determinado "formato". PHP puede tratar cadenas de caracteres como el que más, y así puede "construir" XML si es preciso. En fin... ahora mismo no se me ocurre nada más, espero que lo dicho te sirva de algo, por lo menos. :)

mcalmanovici 10-11-2007 19:43:35

Solución...
 
Muchas gracias por tu respuesta.
Te comento que efectivamente es un clase de php5...
Bueno, al final la solución fue hacer una virtual machine en el mismo servidor e instalarle el php5, y ahora sí anda este función....

Saludos,
Mariano.


La franja horaria es GMT +2. Ahora son las 01:10:45.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi