EPI-XMLPC. можно ли запихнуть вовнутрь класса?

TheAviator

Новичок
EPI-XMLPC. можно ли запихнуть вовнутрь класса?

Итак, имеем реализицию EPI-XMLRPC (она стандартная дл PHP)
Ниже пример использования. Приходит XML от клиента и вызывается метод Greeting, зарегистрированный функцией xmlrpc_server_register_method($xmlrpc_server, "greeting", "greeting_func")

прикол в том, что эта регистрация работает для обычных линейных скриптов, а каким образом третий параметр (в данном случае "greeting_func") - имя вызываемой функции указывать, если внести весь код ВНУТРЬ метода КЛАССА?

Я пробовал вынести function greeting_func($method_name, $params, $app_data) в тот же класс отдельным методом и вызывать его как xmlrpc_server_register_method($xmlrpc_server, "greeting", "$this->greeting_func()"). не пашет.

Есть ли еще какие-нить идеи на этот счет? С трудом верится, что в ПХП включили библиотеку, которая не позвояент рабоать с ООП.



Код:
<?php

$request_xml = <<< END
<?xml version="1.0"?>
<methodCall>
   <methodName>greeting</methodName>
   <params>
      <param>
         <value><string>Dan</string></value>
      </param>
   </params>
</methodCall>
END;

function greeting_func($method_name, $params, $app_data) {
   $name = $params[0];

   return array("hello $name. How are you today?");
}

// create server
$xmlrpc_server = xmlrpc_server_create();

if($xmlrpc_server) {
    // register methods
    if(!xmlrpc_server_register_method($xmlrpc_server, "greeting", "greeting_func")) {
     die("<h2>method registration failed.</h2>");
    }

    // parse xml and call method
    $foo = xmlrpc_server_call_method($xmlrpc_server, $request_xml, $response, array(output_type => "xml"));
    echo "<h1>XML Response</h1><xmp>$foo</xmp>\n";

    // free server resources
    $success = xmlrpc_server_destroy($xmlrpc_server);
}
?>
 

ssv

Новичок
Думаю что как и в
call_user_func ( callback function , [...])

call_user_func(array("classname", 'methodname'));
 
Сверху