Xmlrpc en PHP

Hola,
Tras instalar la extensión de xmlrpc en PHP y probar el script de ejemplo siguiente:
#!/usr/local/bin/php -q
<?
include("xmlrpc.inc");
$thestate=32;
$f=new xmlrpcmsg('examples.getStateName',
array(new xmlrpcval($thestate, "int")));
$c=new xmlrpc_client("/RPC2", "betty.userland.com", 80);
$r=$c->send($f);
$v=$r->value();
if (!$r->faultCode()) {
print "State number ". $thestate . " is " .
$v->scalarval() . "<BR>";
print "<HR>I got this value back<BR><PRE>" .
htmlentities($r->serialize()). "</PRE><HR>\n";
} else {
print "Fault: ";
print "Code: " . $r->faultCode() .
" Reason '" .$r->faultString()."'<BR>";
}
?>
obtengo siempre el siguiente error:
Fatal error: Cannot redeclare xmlrpc_decode() in /usr/src/xmlrpc/xmlrpc.inc on line 1017
¿Tienes alguna idea de porqué está pasando? ¿Cómo solucionarlo?

1 Respuesta

Respuesta
1
Sí, el problema es que tienes instaladas dos librerías XML-RPC para PHP al mismo tiempo, y por eso encuentras conflictos. Seguramente has instalado la implementación que trae el nuevo PHP en sus fuentes para XML-RPC, con la opción --with-xmlrpc. Y aparte alguna otra, como la de phpxmlrpc, xmlrpc1_02.tar.gz de sourceforge.
Prueba a eliminar la línea include("xmlrpc.inc"); del código que me indicas. Las funciones XML-RPC ahora las tienes implícitas en PHP, sin necesidad de invocar includes adicionales.
Más información sobre el módulo que tienes instalado en PHP:
http://xmlrpc-epi.sourceforge.net/main.php?t=php_about
http://www.php.net/manual/en/ref.xmlrpc.php
Te recomiendo que uses el "XML-RPC Class Server" => http://www.webkreator.com/php/xcs/ , para facilitarte el trabajo con los métodos XML-RPC.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas