Php 如何创建动态函数并调用该静态函数
如何用php创建一个动态函数并将其称为静态函数 我创建了新的soap服务器,并通过数组注册了方法。(方法太多) 例如,我创建了一个动态调用我的函数,但该函数仅在使用变量值(如$SOAPACTION('sssss')调用该函数时有效;而不是像我这样的静态调用('sssss'); 此外,我还尝试了create_函数方法(在PHP7中已被弃用),但不起作用。 调用我的函数时出现以下错误:Php 如何创建动态函数并调用该静态函数,php,soap,nusoap,soapserver,Php,Soap,Nusoap,Soapserver,如何用php创建一个动态函数并将其称为静态函数 我创建了新的soap服务器,并通过数组注册了方法。(方法太多) 例如,我创建了一个动态调用我的函数,但该函数仅在使用变量值(如$SOAPACTION('sssss')调用该函数时有效;而不是像我这样的静态调用('sssss'); 此外,我还尝试了create_函数方法(在PHP7中已被弃用),但不起作用。 调用我的函数时出现以下错误: method 'me' not defined in service 有没有办法定义可由soap服务器调用的函数
method 'me' not defined in service
有没有办法定义可由soap服务器调用的函数
$response = array(
'me' => array(
array(
'accesskey'=>'xsd:string',
'username'=>'xsd:string',
'extra'=>'xsd:string',
,,,,,,,,
), 'POST'),
,,,,,,,,
);
if (isset($_SERVER['HTTP_SOAPACTION'])) {
$SOAPACTION = str_replace('"','',str_replace("urn:server#","",$_SERVER['HTTP_SOAPACTION']));
if (array_key_exists($SOAPACTION, $response)) {
$functionName = $SOAPACTION;
$SOAPACTION = function($name)
{
return array("Hello %s\r\n", $name);
};
}
}
$server = new soap_server;
$server->soap_defencoding = 'UTF-8';
$server->decode_utf8 = false;
$server->encode_utf8 = true;
$server->configureWSDL('APIv2');
foreach ($response as $key => $value) {
$server->register($key, $value[0], //parameters
array(
'return' => 'xsd:string'
), //output
'urn:server', //namespace
'urn:server#' . $key, //soapaction
'rpc', // style
'encoded', // use
$value[1]); //description
}
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : '';
$server->service($HTTP_RAW_POST_DATA);