@@ -29,7 +29,7 @@ |
||
29 | 29 | return; |
30 | 30 | } |
31 | 31 | |
32 | - if (is_file($file = __DIR__ . str_replace(array('PhpXmlRpc\\', '\\'), '/', $class).'.php')) { |
|
32 | + if (is_file($file = __DIR__.str_replace(array('PhpXmlRpc\\', '\\'), '/', $class).'.php')) { |
|
33 | 33 | require $file; |
34 | 34 | } |
35 | 35 | } |
@@ -32,7 +32,7 @@ |
||
32 | 32 | // of PHP |
33 | 33 | $t = gmstrftime("%Y%m%dT%H:%M:%S", $timet); |
34 | 34 | } else { |
35 | - $t = strftime("%Y%m%dT%H:%M:%S", $timet - date('Z')); |
|
35 | + $t = strftime("%Y%m%dT%H:%M:%S", $timet-date('Z')); |
|
36 | 36 | } |
37 | 37 | } |
38 | 38 |
@@ -28,7 +28,7 @@ |
||
28 | 28 | * @param string $message |
29 | 29 | * @param string $encoding |
30 | 30 | */ |
31 | - public function debugMessage($message, $encoding=null) |
|
31 | + public function debugMessage($message, $encoding = null) |
|
32 | 32 | { |
33 | 33 | // US-ASCII is a warning for PHP and a fatal for HHVM |
34 | 34 | if ($encoding == 'US-ASCII') { |
@@ -201,7 +201,6 @@ |
||
201 | 201 | * This option can be very useful when debugging servers as it allows you to see exactly what the client sends and |
202 | 202 | * the server returns. |
203 | 203 | * |
204 | - * @param integer $in values 0, 1 and 2 are supported (2 = echo sent msg too, before received response) |
|
205 | 204 | */ |
206 | 205 | public function setDebug($level) |
207 | 206 | { |
@@ -130,10 +130,10 @@ discard block |
||
130 | 130 | $server = $parts['host']; |
131 | 131 | $path = isset($parts['path']) ? $parts['path'] : ''; |
132 | 132 | if (isset($parts['query'])) { |
133 | - $path .= '?' . $parts['query']; |
|
133 | + $path .= '?'.$parts['query']; |
|
134 | 134 | } |
135 | 135 | if (isset($parts['fragment'])) { |
136 | - $path .= '#' . $parts['fragment']; |
|
136 | + $path .= '#'.$parts['fragment']; |
|
137 | 137 | } |
138 | 138 | if (isset($parts['port'])) { |
139 | 139 | $port = $parts['port']; |
@@ -149,7 +149,7 @@ discard block |
||
149 | 149 | } |
150 | 150 | } |
151 | 151 | if ($path == '' || $path[0] != '/') { |
152 | - $this->path = '/' . $path; |
|
152 | + $this->path = '/'.$path; |
|
153 | 153 | } else { |
154 | 154 | $this->path = $path; |
155 | 155 | } |
@@ -187,7 +187,7 @@ discard block |
||
187 | 187 | }*/ |
188 | 188 | |
189 | 189 | // initialize user_agent string |
190 | - $this->user_agent = PhpXmlRpc::$xmlrpcName . ' ' . PhpXmlRpc::$xmlrpcVersion; |
|
190 | + $this->user_agent = PhpXmlRpc::$xmlrpcName.' '.PhpXmlRpc::$xmlrpcVersion; |
|
191 | 191 | } |
192 | 192 | |
193 | 193 | /** |
@@ -556,10 +556,10 @@ discard block |
||
556 | 556 | */ |
557 | 557 | protected function sendPayloadHTTP10($req, $server, $port, $timeout = 0, $username = '', $password = '', |
558 | 558 | $authType = 1, $proxyHost = '', $proxyPort = 0, $proxyUsername = '', $proxyPassword = '', $proxyAuthType = 1, |
559 | - $method='http') |
|
559 | + $method = 'http') |
|
560 | 560 | { |
561 | 561 | if ($port == 0) { |
562 | - $port = ( $method === "https" ) ? 443 : 80; |
|
562 | + $port = ($method === "https") ? 443 : 80; |
|
563 | 563 | } |
564 | 564 | |
565 | 565 | // Only create the payload if it was not created previously |
@@ -590,15 +590,15 @@ discard block |
||
590 | 590 | // thanks to Grant Rauscher <[email protected]> for this |
591 | 591 | $credentials = ''; |
592 | 592 | if ($username != '') { |
593 | - $credentials = 'Authorization: Basic ' . base64_encode($username . ':' . $password) . "\r\n"; |
|
593 | + $credentials = 'Authorization: Basic '.base64_encode($username.':'.$password)."\r\n"; |
|
594 | 594 | if ($authType != 1) { |
595 | - error_log('XML-RPC: ' . __METHOD__ . ': warning. Only Basic auth is supported with HTTP 1.0'); |
|
595 | + error_log('XML-RPC: '.__METHOD__.': warning. Only Basic auth is supported with HTTP 1.0'); |
|
596 | 596 | } |
597 | 597 | } |
598 | 598 | |
599 | 599 | $acceptedEncoding = ''; |
600 | 600 | if (is_array($this->accepted_compression) && count($this->accepted_compression)) { |
601 | - $acceptedEncoding = 'Accept-Encoding: ' . implode(', ', $this->accepted_compression) . "\r\n"; |
|
601 | + $acceptedEncoding = 'Accept-Encoding: '.implode(', ', $this->accepted_compression)."\r\n"; |
|
602 | 602 | } |
603 | 603 | |
604 | 604 | $proxyCredentials = ''; |
@@ -609,18 +609,18 @@ discard block |
||
609 | 609 | $connectServer = $proxyHost; |
610 | 610 | $connectPort = $proxyPort; |
611 | 611 | $transport = "tcp"; |
612 | - $uri = 'http://' . $server . ':' . $port . $this->path; |
|
612 | + $uri = 'http://'.$server.':'.$port.$this->path; |
|
613 | 613 | if ($proxyUsername != '') { |
614 | 614 | if ($proxyAuthType != 1) { |
615 | - error_log('XML-RPC: ' . __METHOD__ . ': warning. Only Basic auth to proxy is supported with HTTP 1.0'); |
|
615 | + error_log('XML-RPC: '.__METHOD__.': warning. Only Basic auth to proxy is supported with HTTP 1.0'); |
|
616 | 616 | } |
617 | - $proxyCredentials = 'Proxy-Authorization: Basic ' . base64_encode($proxyUsername . ':' . $proxyPassword) . "\r\n"; |
|
617 | + $proxyCredentials = 'Proxy-Authorization: Basic '.base64_encode($proxyUsername.':'.$proxyPassword)."\r\n"; |
|
618 | 618 | } |
619 | 619 | } else { |
620 | 620 | $connectServer = $server; |
621 | 621 | $connectPort = $port; |
622 | 622 | /// @todo if supporting https, we should support all its current options as well: peer name verification etc... |
623 | - $transport = ( $method === "https" ) ? "tls" : "tcp"; |
|
623 | + $transport = ($method === "https") ? "tls" : "tcp"; |
|
624 | 624 | $uri = $this->path; |
625 | 625 | } |
626 | 626 | |
@@ -631,56 +631,56 @@ discard block |
||
631 | 631 | $version = ''; |
632 | 632 | foreach ($this->cookies as $name => $cookie) { |
633 | 633 | if ($cookie['version']) { |
634 | - $version = ' $Version="' . $cookie['version'] . '";'; |
|
635 | - $cookieHeader .= ' ' . $name . '="' . $cookie['value'] . '";'; |
|
634 | + $version = ' $Version="'.$cookie['version'].'";'; |
|
635 | + $cookieHeader .= ' '.$name.'="'.$cookie['value'].'";'; |
|
636 | 636 | if ($cookie['path']) { |
637 | - $cookieHeader .= ' $Path="' . $cookie['path'] . '";'; |
|
637 | + $cookieHeader .= ' $Path="'.$cookie['path'].'";'; |
|
638 | 638 | } |
639 | 639 | if ($cookie['domain']) { |
640 | - $cookieHeader .= ' $Domain="' . $cookie['domain'] . '";'; |
|
640 | + $cookieHeader .= ' $Domain="'.$cookie['domain'].'";'; |
|
641 | 641 | } |
642 | 642 | if ($cookie['port']) { |
643 | - $cookieHeader .= ' $Port="' . $cookie['port'] . '";'; |
|
643 | + $cookieHeader .= ' $Port="'.$cookie['port'].'";'; |
|
644 | 644 | } |
645 | 645 | } else { |
646 | - $cookieHeader .= ' ' . $name . '=' . $cookie['value'] . ";"; |
|
646 | + $cookieHeader .= ' '.$name.'='.$cookie['value'].";"; |
|
647 | 647 | } |
648 | 648 | } |
649 | - $cookieHeader = 'Cookie:' . $version . substr($cookieHeader, 0, -1) . "\r\n"; |
|
649 | + $cookieHeader = 'Cookie:'.$version.substr($cookieHeader, 0, -1)."\r\n"; |
|
650 | 650 | } |
651 | 651 | |
652 | 652 | // omit port if 80 |
653 | - $port = ($port == 80) ? '' : (':' . $port); |
|
654 | - |
|
655 | - $op = 'POST ' . $uri . " HTTP/1.0\r\n" . |
|
656 | - 'User-Agent: ' . $this->user_agent . "\r\n" . |
|
657 | - 'Host: ' . $server . $port . "\r\n" . |
|
658 | - $credentials . |
|
659 | - $proxyCredentials . |
|
660 | - $acceptedEncoding . |
|
661 | - $encodingHdr . |
|
662 | - 'Accept-Charset: ' . implode(',', $this->accepted_charset_encodings) . "\r\n" . |
|
663 | - $cookieHeader . |
|
664 | - 'Content-Type: ' . $req->content_type . "\r\nContent-Length: " . |
|
665 | - strlen($payload) . "\r\n\r\n" . |
|
653 | + $port = ($port == 80) ? '' : (':'.$port); |
|
654 | + |
|
655 | + $op = 'POST '.$uri." HTTP/1.0\r\n". |
|
656 | + 'User-Agent: '.$this->user_agent."\r\n". |
|
657 | + 'Host: '.$server.$port."\r\n". |
|
658 | + $credentials. |
|
659 | + $proxyCredentials. |
|
660 | + $acceptedEncoding. |
|
661 | + $encodingHdr. |
|
662 | + 'Accept-Charset: '.implode(',', $this->accepted_charset_encodings)."\r\n". |
|
663 | + $cookieHeader. |
|
664 | + 'Content-Type: '.$req->content_type."\r\nContent-Length: ". |
|
665 | + strlen($payload)."\r\n\r\n". |
|
666 | 666 | $payload; |
667 | 667 | |
668 | - if ($this->debug > 1) { |
|
668 | + if ($this->debug>1) { |
|
669 | 669 | Logger::instance()->debugMessage("---SENDING---\n$op\n---END---"); |
670 | 670 | } |
671 | 671 | |
672 | - if ($timeout > 0) { |
|
672 | + if ($timeout>0) { |
|
673 | 673 | $fp = @stream_socket_client("$transport://$connectServer:$connectPort", $this->errno, $this->errstr, $timeout); |
674 | 674 | } else { |
675 | 675 | $fp = @stream_socket_client("$transport://$connectServer:$connectPort", $this->errno, $this->errstr); |
676 | 676 | } |
677 | 677 | if ($fp) { |
678 | - if ($timeout > 0) { |
|
678 | + if ($timeout>0) { |
|
679 | 679 | stream_set_timeout($fp, $timeout); |
680 | 680 | } |
681 | 681 | } else { |
682 | - $this->errstr = 'Connect error: ' . $this->errstr; |
|
683 | - $r = new Response(0, PhpXmlRpc::$xmlrpcerr['http_error'], $this->errstr . ' (' . $this->errno . ')'); |
|
682 | + $this->errstr = 'Connect error: '.$this->errstr; |
|
683 | + $r = new Response(0, PhpXmlRpc::$xmlrpcerr['http_error'], $this->errstr.' ('.$this->errno.')'); |
|
684 | 684 | |
685 | 685 | return $r; |
686 | 686 | } |
@@ -732,7 +732,7 @@ discard block |
||
732 | 732 | * @param int $sslVersion |
733 | 733 | * @return Response |
734 | 734 | */ |
735 | - protected function sendPayloadHTTPS($req, $server, $port, $timeout = 0, $username = '', $password = '', |
|
735 | + protected function sendPayloadHTTPS($req, $server, $port, $timeout = 0, $username = '', $password = '', |
|
736 | 736 | $authType = 1, $cert = '', $certPass = '', $caCert = '', $caCertDir = '', $proxyHost = '', $proxyPort = 0, |
737 | 737 | $proxyUsername = '', $proxyPassword = '', $proxyAuthType = 1, $keepAlive = false, $key = '', $keyPass = '', |
738 | 738 | $sslVersion = 0) |
@@ -821,12 +821,12 @@ discard block |
||
821 | 821 | $encodingHdr = ''; |
822 | 822 | } |
823 | 823 | |
824 | - if ($this->debug > 1) { |
|
824 | + if ($this->debug>1) { |
|
825 | 825 | Logger::instance()->debugMessage("---SENDING---\n$payload\n---END---"); |
826 | 826 | } |
827 | 827 | |
828 | 828 | if (!$keepAlive || !$this->xmlrpc_curl_handle) { |
829 | - $curl = curl_init($method . '://' . $server . ':' . $port . $this->path); |
|
829 | + $curl = curl_init($method.'://'.$server.':'.$port.$this->path); |
|
830 | 830 | if ($keepAlive) { |
831 | 831 | $this->xmlrpc_curl_handle = $curl; |
832 | 832 | } |
@@ -837,7 +837,7 @@ discard block |
||
837 | 837 | // results into variable |
838 | 838 | curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); |
839 | 839 | |
840 | - if ($this->debug > 1) { |
|
840 | + if ($this->debug>1) { |
|
841 | 841 | curl_setopt($curl, CURLOPT_VERBOSE, true); |
842 | 842 | /// @todo allow callers to redirect curlopt_stderr to some stream which can be buffered |
843 | 843 | } |
@@ -863,7 +863,7 @@ discard block |
||
863 | 863 | } |
864 | 864 | } |
865 | 865 | // extra headers |
866 | - $headers = array('Content-Type: ' . $req->content_type, 'Accept-Charset: ' . implode(',', $this->accepted_charset_encodings)); |
|
866 | + $headers = array('Content-Type: '.$req->content_type, 'Accept-Charset: '.implode(',', $this->accepted_charset_encodings)); |
|
867 | 867 | // if no keepalive is wanted, let the server know it in advance |
868 | 868 | if (!$keepAlive) { |
869 | 869 | $headers[] = 'Connection: close'; |
@@ -876,15 +876,15 @@ discard block |
||
876 | 876 | curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); |
877 | 877 | // timeout is borked |
878 | 878 | if ($timeout) { |
879 | - curl_setopt($curl, CURLOPT_TIMEOUT, $timeout == 1 ? 1 : $timeout - 1); |
|
879 | + curl_setopt($curl, CURLOPT_TIMEOUT, $timeout == 1 ? 1 : $timeout-1); |
|
880 | 880 | } |
881 | 881 | |
882 | 882 | if ($username && $password) { |
883 | - curl_setopt($curl, CURLOPT_USERPWD, $username . ':' . $password); |
|
883 | + curl_setopt($curl, CURLOPT_USERPWD, $username.':'.$password); |
|
884 | 884 | if (defined('CURLOPT_HTTPAUTH')) { |
885 | 885 | curl_setopt($curl, CURLOPT_HTTPAUTH, $authType); |
886 | 886 | } elseif ($authType != 1) { |
887 | - error_log('XML-RPC: ' . __METHOD__ . ': warning. Only Basic auth is supported by the current PHP/curl install'); |
|
887 | + error_log('XML-RPC: '.__METHOD__.': warning. Only Basic auth is supported by the current PHP/curl install'); |
|
888 | 888 | } |
889 | 889 | } |
890 | 890 | |
@@ -925,13 +925,13 @@ discard block |
||
925 | 925 | if ($proxyPort == 0) { |
926 | 926 | $proxyPort = 8080; // NB: even for HTTPS, local connection is on port 8080 |
927 | 927 | } |
928 | - curl_setopt($curl, CURLOPT_PROXY, $proxyHost . ':' . $proxyPort); |
|
928 | + curl_setopt($curl, CURLOPT_PROXY, $proxyHost.':'.$proxyPort); |
|
929 | 929 | if ($proxyUsername) { |
930 | - curl_setopt($curl, CURLOPT_PROXYUSERPWD, $proxyUsername . ':' . $proxyPassword); |
|
930 | + curl_setopt($curl, CURLOPT_PROXYUSERPWD, $proxyUsername.':'.$proxyPassword); |
|
931 | 931 | if (defined('CURLOPT_PROXYAUTH')) { |
932 | 932 | curl_setopt($curl, CURLOPT_PROXYAUTH, $proxyAuthType); |
933 | 933 | } elseif ($proxyAuthType != 1) { |
934 | - error_log('XML-RPC: ' . __METHOD__ . ': warning. Only Basic auth to proxy is supported by the current PHP/curl install'); |
|
934 | + error_log('XML-RPC: '.__METHOD__.': warning. Only Basic auth to proxy is supported by the current PHP/curl install'); |
|
935 | 935 | } |
936 | 936 | } |
937 | 937 | } |
@@ -942,7 +942,7 @@ discard block |
||
942 | 942 | if (count($this->cookies)) { |
943 | 943 | $cookieHeader = ''; |
944 | 944 | foreach ($this->cookies as $name => $cookie) { |
945 | - $cookieHeader .= $name . '=' . $cookie['value'] . '; '; |
|
945 | + $cookieHeader .= $name.'='.$cookie['value'].'; '; |
|
946 | 946 | } |
947 | 947 | curl_setopt($curl, CURLOPT_COOKIE, substr($cookieHeader, 0, -2)); |
948 | 948 | } |
@@ -953,13 +953,13 @@ discard block |
||
953 | 953 | |
954 | 954 | $result = curl_exec($curl); |
955 | 955 | |
956 | - if ($this->debug > 1) { |
|
956 | + if ($this->debug>1) { |
|
957 | 957 | $message = "---CURL INFO---\n"; |
958 | 958 | foreach (curl_getinfo($curl) as $name => $val) { |
959 | 959 | if (is_array($val)) { |
960 | 960 | $val = implode("\n", $val); |
961 | 961 | } |
962 | - $message .= $name . ': ' . $val . "\n"; |
|
962 | + $message .= $name.': '.$val."\n"; |
|
963 | 963 | } |
964 | 964 | $message .= "---END---"; |
965 | 965 | Logger::instance()->debugMessage($message); |
@@ -969,7 +969,7 @@ discard block |
||
969 | 969 | /// @todo we should use a better check here - what if we get back '' or '0'? |
970 | 970 | |
971 | 971 | $this->errstr = 'no response'; |
972 | - $resp = new Response(0, PhpXmlRpc::$xmlrpcerr['curl_fail'], PhpXmlRpc::$xmlrpcstr['curl_fail'] . ': ' . curl_error($curl)); |
|
972 | + $resp = new Response(0, PhpXmlRpc::$xmlrpcerr['curl_fail'], PhpXmlRpc::$xmlrpcstr['curl_fail'].': '.curl_error($curl)); |
|
973 | 973 | curl_close($curl); |
974 | 974 | if ($keepAlive) { |
975 | 975 | $this->xmlrpc_curl_handle = null; |
@@ -1079,7 +1079,7 @@ discard block |
||
1079 | 1079 | $call['methodName'] = new Value($req->method(), 'string'); |
1080 | 1080 | $numParams = $req->getNumParams(); |
1081 | 1081 | $params = array(); |
1082 | - for ($i = 0; $i < $numParams; $i++) { |
|
1082 | + for ($i = 0; $i<$numParams; $i++) { |
|
1083 | 1083 | $params[$i] = $req->getParam($i); |
1084 | 1084 | } |
1085 | 1085 | $call['params'] = new Value($params, 'array'); |
@@ -1105,15 +1105,15 @@ discard block |
||
1105 | 1105 | /// @todo test this code branch... |
1106 | 1106 | $rets = $result->value(); |
1107 | 1107 | if (!is_array($rets)) { |
1108 | - return false; // bad return type from system.multicall |
|
1108 | + return false; // bad return type from system.multicall |
|
1109 | 1109 | } |
1110 | 1110 | $numRets = count($rets); |
1111 | 1111 | if ($numRets != count($reqs)) { |
1112 | - return false; // wrong number of return values. |
|
1112 | + return false; // wrong number of return values. |
|
1113 | 1113 | } |
1114 | 1114 | |
1115 | 1115 | $response = array(); |
1116 | - for ($i = 0; $i < $numRets; $i++) { |
|
1116 | + for ($i = 0; $i<$numRets; $i++) { |
|
1117 | 1117 | $val = $rets[$i]; |
1118 | 1118 | if (!is_array($val)) { |
1119 | 1119 | return false; |
@@ -1121,7 +1121,7 @@ discard block |
||
1121 | 1121 | switch (count($val)) { |
1122 | 1122 | case 1: |
1123 | 1123 | if (!isset($val[0])) { |
1124 | - return false; // Bad value |
|
1124 | + return false; // Bad value |
|
1125 | 1125 | } |
1126 | 1126 | // Normal return value |
1127 | 1127 | $response[$i] = new Response($val[0], 0, '', 'phpvals'); |
@@ -1149,19 +1149,19 @@ discard block |
||
1149 | 1149 | |
1150 | 1150 | $rets = $result->value(); |
1151 | 1151 | if ($rets->kindOf() != 'array') { |
1152 | - return false; // bad return type from system.multicall |
|
1152 | + return false; // bad return type from system.multicall |
|
1153 | 1153 | } |
1154 | 1154 | $numRets = $rets->count(); |
1155 | 1155 | if ($numRets != count($reqs)) { |
1156 | - return false; // wrong number of return values. |
|
1156 | + return false; // wrong number of return values. |
|
1157 | 1157 | } |
1158 | 1158 | |
1159 | 1159 | $response = array(); |
1160 | - foreach($rets as $val) { |
|
1160 | + foreach ($rets as $val) { |
|
1161 | 1161 | switch ($val->kindOf()) { |
1162 | 1162 | case 'array': |
1163 | 1163 | if ($val->count() != 1) { |
1164 | - return false; // Bad value |
|
1164 | + return false; // Bad value |
|
1165 | 1165 | } |
1166 | 1166 | // Normal return value |
1167 | 1167 | $response[] = new Response($val[0]); |
@@ -44,7 +44,7 @@ |
||
44 | 44 | * |
45 | 45 | * When no value or type is passed in, the value is left uninitialized, and the value can be added later. |
46 | 46 | * |
47 | - * @param mixed $val if passing in an array, all array elements should be PhpXmlRpc\Value themselves |
|
47 | + * @param integer $val if passing in an array, all array elements should be PhpXmlRpc\Value themselves |
|
48 | 48 | * @param string $type any valid xmlrpc type name (lowercase): i4, int, boolean, string, double, dateTime.iso8601, |
49 | 49 | * base64, array, struct, null. |
50 | 50 | * If null, 'string' is assumed. |
@@ -83,7 +83,7 @@ discard block |
||
83 | 83 | $this->me['struct'] = $val; |
84 | 84 | break; |
85 | 85 | default: |
86 | - error_log("XML-RPC: " . __METHOD__ . ": not a known type ($type)"); |
|
86 | + error_log("XML-RPC: ".__METHOD__.": not a known type ($type)"); |
|
87 | 87 | } |
88 | 88 | } |
89 | 89 | } |
@@ -108,7 +108,7 @@ discard block |
||
108 | 108 | } |
109 | 109 | |
110 | 110 | if ($typeOf !== 1) { |
111 | - error_log("XML-RPC: " . __METHOD__ . ": not a scalar type ($type)"); |
|
111 | + error_log("XML-RPC: ".__METHOD__.": not a scalar type ($type)"); |
|
112 | 112 | return 0; |
113 | 113 | } |
114 | 114 | |
@@ -125,10 +125,10 @@ discard block |
||
125 | 125 | |
126 | 126 | switch ($this->mytype) { |
127 | 127 | case 1: |
128 | - error_log('XML-RPC: ' . __METHOD__ . ': scalar xmlrpc value can have only one value'); |
|
128 | + error_log('XML-RPC: '.__METHOD__.': scalar xmlrpc value can have only one value'); |
|
129 | 129 | return 0; |
130 | 130 | case 3: |
131 | - error_log('XML-RPC: ' . __METHOD__ . ': cannot add anonymous scalar to struct xmlrpc value'); |
|
131 | + error_log('XML-RPC: '.__METHOD__.': cannot add anonymous scalar to struct xmlrpc value'); |
|
132 | 132 | return 0; |
133 | 133 | case 2: |
134 | 134 | // we're adding a scalar value to an array here |
@@ -170,7 +170,7 @@ discard block |
||
170 | 170 | |
171 | 171 | return 1; |
172 | 172 | } else { |
173 | - error_log('XML-RPC: ' . __METHOD__ . ': already initialized as a [' . $this->kindOf() . ']'); |
|
173 | + error_log('XML-RPC: '.__METHOD__.': already initialized as a ['.$this->kindOf().']'); |
|
174 | 174 | return 0; |
175 | 175 | } |
176 | 176 | } |
@@ -201,7 +201,7 @@ discard block |
||
201 | 201 | |
202 | 202 | return 1; |
203 | 203 | } else { |
204 | - error_log('XML-RPC: ' . __METHOD__ . ': already initialized as a [' . $this->kindOf() . ']'); |
|
204 | + error_log('XML-RPC: '.__METHOD__.': already initialized as a ['.$this->kindOf().']'); |
|
205 | 205 | return 0; |
206 | 206 | } |
207 | 207 | } |
@@ -240,20 +240,20 @@ discard block |
||
240 | 240 | case 1: |
241 | 241 | switch ($typ) { |
242 | 242 | case static::$xmlrpcBase64: |
243 | - $rs .= "<${typ}>" . base64_encode($val) . "</${typ}>"; |
|
243 | + $rs .= "<${typ}>".base64_encode($val)."</${typ}>"; |
|
244 | 244 | break; |
245 | 245 | case static::$xmlrpcBoolean: |
246 | - $rs .= "<${typ}>" . ($val ? '1' : '0') . "</${typ}>"; |
|
246 | + $rs .= "<${typ}>".($val ? '1' : '0')."</${typ}>"; |
|
247 | 247 | break; |
248 | 248 | case static::$xmlrpcString: |
249 | 249 | // G. Giunta 2005/2/13: do NOT use htmlentities, since |
250 | 250 | // it will produce named html entities, which are invalid xml |
251 | - $rs .= "<${typ}>" . Charset::instance()->encodeEntities($val, PhpXmlRpc::$xmlrpc_internalencoding, $charsetEncoding) . "</${typ}>"; |
|
251 | + $rs .= "<${typ}>".Charset::instance()->encodeEntities($val, PhpXmlRpc::$xmlrpc_internalencoding, $charsetEncoding)."</${typ}>"; |
|
252 | 252 | break; |
253 | 253 | case static::$xmlrpcInt: |
254 | 254 | case static::$xmlrpcI4: |
255 | 255 | case static::$xmlrpcI8: |
256 | - $rs .= "<${typ}>" . (int)$val . "</${typ}>"; |
|
256 | + $rs .= "<${typ}>".(int) $val."</${typ}>"; |
|
257 | 257 | break; |
258 | 258 | case static::$xmlrpcDouble: |
259 | 259 | // avoid using standard conversion of float to string because it is locale-dependent, |
@@ -261,15 +261,15 @@ discard block |
||
261 | 261 | // sprintf('%F') could be most likely ok but it fails eg. on 2e-14. |
262 | 262 | // The code below tries its best at keeping max precision while avoiding exp notation, |
263 | 263 | // but there is of course no limit in the number of decimal places to be used... |
264 | - $rs .= "<${typ}>" . preg_replace('/\\.?0+$/', '', number_format((double)$val, 128, '.', '')) . "</${typ}>"; |
|
264 | + $rs .= "<${typ}>".preg_replace('/\\.?0+$/', '', number_format((double) $val, 128, '.', ''))."</${typ}>"; |
|
265 | 265 | break; |
266 | 266 | case static::$xmlrpcDateTime: |
267 | 267 | if (is_string($val)) { |
268 | 268 | $rs .= "<${typ}>${val}</${typ}>"; |
269 | 269 | } elseif (is_a($val, 'DateTime')) { |
270 | - $rs .= "<${typ}>" . $val->format('Ymd\TH:i:s') . "</${typ}>"; |
|
270 | + $rs .= "<${typ}>".$val->format('Ymd\TH:i:s')."</${typ}>"; |
|
271 | 271 | } elseif (is_int($val)) { |
272 | - $rs .= "<${typ}>" . strftime("%Y%m%dT%H:%M:%S", $val) . "</${typ}>"; |
|
272 | + $rs .= "<${typ}>".strftime("%Y%m%dT%H:%M:%S", $val)."</${typ}>"; |
|
273 | 273 | } else { |
274 | 274 | // not really a good idea here: but what shall we output anyway? left for backward compat... |
275 | 275 | $rs .= "<${typ}>${val}</${typ}>"; |
@@ -291,13 +291,13 @@ discard block |
||
291 | 291 | case 3: |
292 | 292 | // struct |
293 | 293 | if ($this->_php_class) { |
294 | - $rs .= '<struct php_class="' . $this->_php_class . "\">\n"; |
|
294 | + $rs .= '<struct php_class="'.$this->_php_class."\">\n"; |
|
295 | 295 | } else { |
296 | 296 | $rs .= "<struct>\n"; |
297 | 297 | } |
298 | 298 | $charsetEncoder = Charset::instance(); |
299 | 299 | foreach ($val as $key2 => $val2) { |
300 | - $rs .= '<member><name>' . $charsetEncoder->encodeEntities($key2, PhpXmlRpc::$xmlrpc_internalencoding, $charsetEncoding) . "</name>\n"; |
|
300 | + $rs .= '<member><name>'.$charsetEncoder->encodeEntities($key2, PhpXmlRpc::$xmlrpc_internalencoding, $charsetEncoding)."</name>\n"; |
|
301 | 301 | //$rs.=$this->serializeval($val2); |
302 | 302 | $rs .= $val2->serialize($charsetEncoding); |
303 | 303 | $rs .= "</member>\n"; |
@@ -332,7 +332,7 @@ discard block |
||
332 | 332 | $val = reset($this->me); |
333 | 333 | $typ = key($this->me); |
334 | 334 | |
335 | - return '<value>' . $this->serializedata($typ, $val, $charsetEncoding) . "</value>\n"; |
|
335 | + return '<value>'.$this->serializedata($typ, $val, $charsetEncoding)."</value>\n"; |
|
336 | 336 | } |
337 | 337 | |
338 | 338 | /** |
@@ -38,9 +38,9 @@ discard block |
||
38 | 38 | public function xml_header($charsetEncoding = '') |
39 | 39 | { |
40 | 40 | if ($charsetEncoding != '') { |
41 | - return "<?xml version=\"1.0\" encoding=\"$charsetEncoding\" ?" . ">\n<methodCall>\n"; |
|
41 | + return "<?xml version=\"1.0\" encoding=\"$charsetEncoding\" ?".">\n<methodCall>\n"; |
|
42 | 42 | } else { |
43 | - return "<?xml version=\"1.0\"?" . ">\n<methodCall>\n"; |
|
43 | + return "<?xml version=\"1.0\"?".">\n<methodCall>\n"; |
|
44 | 44 | } |
45 | 45 | } |
46 | 46 | |
@@ -52,16 +52,16 @@ discard block |
||
52 | 52 | public function createPayload($charsetEncoding = '') |
53 | 53 | { |
54 | 54 | if ($charsetEncoding != '') { |
55 | - $this->content_type = 'text/xml; charset=' . $charsetEncoding; |
|
55 | + $this->content_type = 'text/xml; charset='.$charsetEncoding; |
|
56 | 56 | } else { |
57 | 57 | $this->content_type = 'text/xml'; |
58 | 58 | } |
59 | 59 | $this->payload = $this->xml_header($charsetEncoding); |
60 | - $this->payload .= '<methodName>' . Charset::instance()->encodeEntities( |
|
61 | - $this->methodname, PhpXmlRpc::$xmlrpc_internalencoding, $charsetEncoding) . "</methodName>\n"; |
|
60 | + $this->payload .= '<methodName>'.Charset::instance()->encodeEntities( |
|
61 | + $this->methodname, PhpXmlRpc::$xmlrpc_internalencoding, $charsetEncoding)."</methodName>\n"; |
|
62 | 62 | $this->payload .= "<params>\n"; |
63 | 63 | foreach ($this->params as $p) { |
64 | - $this->payload .= "<param>\n" . $p->serialize($charsetEncoding) . |
|
64 | + $this->payload .= "<param>\n".$p->serialize($charsetEncoding). |
|
65 | 65 | "</param>\n"; |
66 | 66 | } |
67 | 67 | $this->payload .= "</params>\n"; |
@@ -186,7 +186,7 @@ discard block |
||
186 | 186 | $this->httpResponse = array('raw_data' => $data, 'headers' => array(), 'cookies' => array()); |
187 | 187 | |
188 | 188 | if ($data == '') { |
189 | - error_log('XML-RPC: ' . __METHOD__ . ': no response received from server.'); |
|
189 | + error_log('XML-RPC: '.__METHOD__.': no response received from server.'); |
|
190 | 190 | return new Response(0, PhpXmlRpc::$xmlrpcerr['no_data'], PhpXmlRpc::$xmlrpcstr['no_data']); |
191 | 191 | } |
192 | 192 | |
@@ -195,7 +195,7 @@ discard block |
||
195 | 195 | $httpParser = new Http(); |
196 | 196 | try { |
197 | 197 | $this->httpResponse = $httpParser->parseResponseHeaders($data, $headersProcessed, $this->debug); |
198 | - } catch(\Exception $e) { |
|
198 | + } catch (\Exception $e) { |
|
199 | 199 | $r = new Response(0, $e->getCode(), $e->getMessage()); |
200 | 200 | // failed processing of HTTP response headers |
201 | 201 | // save into response obj the full payload received, for debugging |
@@ -214,7 +214,7 @@ discard block |
||
214 | 214 | // idea from Luca Mariano <[email protected]> originally in PEARified version of the lib |
215 | 215 | $pos = strrpos($data, '</methodResponse>'); |
216 | 216 | if ($pos !== false) { |
217 | - $data = substr($data, 0, $pos + 17); |
|
217 | + $data = substr($data, 0, $pos+17); |
|
218 | 218 | } |
219 | 219 | |
220 | 220 | // try to 'guestimate' the character encoding of the received response |
@@ -225,9 +225,9 @@ discard block |
||
225 | 225 | if ($start) { |
226 | 226 | $start += strlen('<!-- SERVER DEBUG INFO (BASE64 ENCODED):'); |
227 | 227 | $end = strpos($data, '-->', $start); |
228 | - $comments = substr($data, $start, $end - $start); |
|
229 | - Logger::instance()->debugMessage("---SERVER DEBUG INFO (DECODED) ---\n\t" . |
|
230 | - str_replace("\n", "\n\t", base64_decode($comments)) . "\n---END---", $respEncoding); |
|
228 | + $comments = substr($data, $start, $end-$start); |
|
229 | + Logger::instance()->debugMessage("---SERVER DEBUG INFO (DECODED) ---\n\t". |
|
230 | + str_replace("\n", "\n\t", base64_decode($comments))."\n---END---", $respEncoding); |
|
231 | 231 | } |
232 | 232 | } |
233 | 233 | |
@@ -255,7 +255,7 @@ discard block |
||
255 | 255 | if (extension_loaded('mbstring')) { |
256 | 256 | $data = mb_convert_encoding($data, 'UTF-8', $respEncoding); |
257 | 257 | } else { |
258 | - error_log('XML-RPC: ' . __METHOD__ . ': invalid charset encoding of received response: ' . $respEncoding); |
|
258 | + error_log('XML-RPC: '.__METHOD__.': invalid charset encoding of received response: '.$respEncoding); |
|
259 | 259 | } |
260 | 260 | } |
261 | 261 | } |
@@ -298,7 +298,7 @@ discard block |
||
298 | 298 | xml_get_current_line_number($parser), xml_get_current_column_number($parser)); |
299 | 299 | } |
300 | 300 | error_log($errStr); |
301 | - $r = new Response(0, PhpXmlRpc::$xmlrpcerr['invalid_return'], PhpXmlRpc::$xmlrpcstr['invalid_return'] . ' (' . $errStr . ')'); |
|
301 | + $r = new Response(0, PhpXmlRpc::$xmlrpcerr['invalid_return'], PhpXmlRpc::$xmlrpcstr['invalid_return'].' ('.$errStr.')'); |
|
302 | 302 | xml_parser_free($parser); |
303 | 303 | if ($this->debug) { |
304 | 304 | print $errStr; |
@@ -311,13 +311,13 @@ discard block |
||
311 | 311 | } |
312 | 312 | xml_parser_free($parser); |
313 | 313 | // second error check: xml well formed but not xml-rpc compliant |
314 | - if ($xmlRpcParser->_xh['isf'] > 1) { |
|
314 | + if ($xmlRpcParser->_xh['isf']>1) { |
|
315 | 315 | if ($this->debug) { |
316 | 316 | /// @todo echo something for user? |
317 | 317 | } |
318 | 318 | |
319 | 319 | $r = new Response(0, PhpXmlRpc::$xmlrpcerr['invalid_return'], |
320 | - PhpXmlRpc::$xmlrpcstr['invalid_return'] . ' ' . $xmlRpcParser->_xh['isf_reason']); |
|
320 | + PhpXmlRpc::$xmlrpcstr['invalid_return'].' '.$xmlRpcParser->_xh['isf_reason']); |
|
321 | 321 | } |
322 | 322 | // third error check: parsing of the response has somehow gone boink. |
323 | 323 | // NB: shall we omit this check, since we trust the parsing code? |
@@ -328,7 +328,7 @@ discard block |
||
328 | 328 | $r = new Response(0, PhpXmlRpc::$xmlrpcerr['invalid_return'], |
329 | 329 | PhpXmlRpc::$xmlrpcstr['invalid_return']); |
330 | 330 | } else { |
331 | - if ($this->debug > 1) { |
|
331 | + if ($this->debug>1) { |
|
332 | 332 | Logger::instance()->debugMessage( |
333 | 333 | "---PARSED---\n".var_export($xmlRpcParser->_xh['value'], true)."\n---END---" |
334 | 334 | ); |
@@ -26,10 +26,10 @@ |
||
26 | 26 | { |
27 | 27 | // construct a latin string with all chars (except control ones) |
28 | 28 | $this->latinString = "\n\r\t"; |
29 | - for($i = 32; $i < 127; $i++) { |
|
29 | + for ($i = 32; $i<127; $i++) { |
|
30 | 30 | $this->latinString .= chr($i); |
31 | 31 | } |
32 | - for($i = 160; $i < 256; $i++) { |
|
32 | + for ($i = 160; $i<256; $i++) { |
|
33 | 33 | $this->latinString .= chr($i); |
34 | 34 | } |
35 | 35 | } |
@@ -52,12 +52,12 @@ discard block |
||
52 | 52 | |
53 | 53 | private function __construct() |
54 | 54 | { |
55 | - for ($i = 0; $i < 32; $i++) { |
|
55 | + for ($i = 0; $i<32; $i++) { |
|
56 | 56 | $this->xml_iso88591_Entities["in"][] = chr($i); |
57 | 57 | $this->xml_iso88591_Entities["out"][] = "&#{$i};"; |
58 | 58 | } |
59 | 59 | |
60 | - for ($i = 160; $i < 256; $i++) { |
|
60 | + for ($i = 160; $i<256; $i++) { |
|
61 | 61 | $this->xml_iso88591_Entities["in"][] = chr($i); |
62 | 62 | $this->xml_iso88591_Entities["out"][] = "&#{$i};"; |
63 | 63 | } |
@@ -94,7 +94,7 @@ discard block |
||
94 | 94 | $srcEncoding = PhpXmlRpc::$xmlrpc_internalencoding; |
95 | 95 | } |
96 | 96 | |
97 | - $conversion = strtoupper($srcEncoding . '_' . $destEncoding); |
|
97 | + $conversion = strtoupper($srcEncoding.'_'.$destEncoding); |
|
98 | 98 | switch ($conversion) { |
99 | 99 | case 'ISO-8859-1_': |
100 | 100 | case 'ISO-8859-1_US-ASCII': |
@@ -123,13 +123,13 @@ discard block |
||
123 | 123 | // NB: this will choke on invalid UTF-8, going most likely beyond EOF |
124 | 124 | $escapedData = ''; |
125 | 125 | // be kind to users creating string xmlrpc values out of different php types |
126 | - $data = (string)$data; |
|
126 | + $data = (string) $data; |
|
127 | 127 | $ns = strlen($data); |
128 | - for ($nn = 0; $nn < $ns; $nn++) { |
|
128 | + for ($nn = 0; $nn<$ns; $nn++) { |
|
129 | 129 | $ch = $data[$nn]; |
130 | 130 | $ii = ord($ch); |
131 | 131 | // 7 bits: 0bbbbbbb (127) |
132 | - if ($ii < 128) { |
|
132 | + if ($ii<128) { |
|
133 | 133 | /// @todo shall we replace this with a (supposedly) faster str_replace? |
134 | 134 | switch ($ii) { |
135 | 135 | case 34: |
@@ -153,33 +153,33 @@ discard block |
||
153 | 153 | } // 11 bits: 110bbbbb 10bbbbbb (2047) |
154 | 154 | elseif ($ii >> 5 == 6) { |
155 | 155 | $b1 = ($ii & 31); |
156 | - $ii = ord($data[$nn + 1]); |
|
156 | + $ii = ord($data[$nn+1]); |
|
157 | 157 | $b2 = ($ii & 63); |
158 | - $ii = ($b1 * 64) + $b2; |
|
158 | + $ii = ($b1 * 64)+$b2; |
|
159 | 159 | $ent = sprintf('&#%d;', $ii); |
160 | 160 | $escapedData .= $ent; |
161 | 161 | $nn += 1; |
162 | 162 | } // 16 bits: 1110bbbb 10bbbbbb 10bbbbbb |
163 | 163 | elseif ($ii >> 4 == 14) { |
164 | 164 | $b1 = ($ii & 15); |
165 | - $ii = ord($data[$nn + 1]); |
|
165 | + $ii = ord($data[$nn+1]); |
|
166 | 166 | $b2 = ($ii & 63); |
167 | - $ii = ord($data[$nn + 2]); |
|
167 | + $ii = ord($data[$nn+2]); |
|
168 | 168 | $b3 = ($ii & 63); |
169 | - $ii = ((($b1 * 64) + $b2) * 64) + $b3; |
|
169 | + $ii = ((($b1 * 64)+$b2) * 64)+$b3; |
|
170 | 170 | $ent = sprintf('&#%d;', $ii); |
171 | 171 | $escapedData .= $ent; |
172 | 172 | $nn += 2; |
173 | 173 | } // 21 bits: 11110bbb 10bbbbbb 10bbbbbb 10bbbbbb |
174 | 174 | elseif ($ii >> 3 == 30) { |
175 | 175 | $b1 = ($ii & 7); |
176 | - $ii = ord($data[$nn + 1]); |
|
176 | + $ii = ord($data[$nn+1]); |
|
177 | 177 | $b2 = ($ii & 63); |
178 | - $ii = ord($data[$nn + 2]); |
|
178 | + $ii = ord($data[$nn+2]); |
|
179 | 179 | $b3 = ($ii & 63); |
180 | - $ii = ord($data[$nn + 3]); |
|
180 | + $ii = ord($data[$nn+3]); |
|
181 | 181 | $b4 = ($ii & 63); |
182 | - $ii = ((((($b1 * 64) + $b2) * 64) + $b3) * 64) + $b4; |
|
182 | + $ii = ((((($b1 * 64)+$b2) * 64)+$b3) * 64)+$b4; |
|
183 | 183 | $ent = sprintf('&#%d;', $ii); |
184 | 184 | $escapedData .= $ent; |
185 | 185 | $nn += 3; |
@@ -214,7 +214,7 @@ discard block |
||
214 | 214 | |
215 | 215 | default: |
216 | 216 | $escapedData = ''; |
217 | - error_log('XML-RPC: ' . __METHOD__ . ": Converting from $srcEncoding to $destEncoding: not supported..."); |
|
217 | + error_log('XML-RPC: '.__METHOD__.": Converting from $srcEncoding to $destEncoding: not supported..."); |
|
218 | 218 | } |
219 | 219 | |
220 | 220 | return $escapedData; |
@@ -266,7 +266,7 @@ discard block |
||
266 | 266 | case 'iso88591': |
267 | 267 | return $this->xml_iso88591_Entities; |
268 | 268 | default: |
269 | - throw new \Exception('Unsupported charset: ' . $charset); |
|
269 | + throw new \Exception('Unsupported charset: '.$charset); |
|
270 | 270 | } |
271 | 271 | } |
272 | 272 |
@@ -52,7 +52,7 @@ discard block |
||
52 | 52 | */ |
53 | 53 | public function echoInput() |
54 | 54 | { |
55 | - $r = new Response(new PhpXmlRpc\Value("'Aha said I: '" . file_get_contents('php://input'), 'string')); |
|
55 | + $r = new Response(new PhpXmlRpc\Value("'Aha said I: '".file_get_contents('php://input'), 'string')); |
|
56 | 56 | print $r->serialize(); |
57 | 57 | } |
58 | 58 | } |
@@ -68,30 +68,30 @@ discard block |
||
68 | 68 | PhpXmlRpc\Server::xmlrpc_debugmsg($m); |
69 | 69 | } |
70 | 70 | |
71 | -function _xmlrpcs_getCapabilities($server, $m=null) |
|
71 | +function _xmlrpcs_getCapabilities($server, $m = null) |
|
72 | 72 | { |
73 | 73 | return PhpXmlRpc\Server::_xmlrpcs_getCapabilities($server, $m); |
74 | 74 | } |
75 | 75 | |
76 | -$_xmlrpcs_listMethods_sig=array(array($GLOBALS['xmlrpcArray'])); |
|
77 | -$_xmlrpcs_listMethods_doc='This method lists all the methods that the XML-RPC server knows how to dispatch'; |
|
78 | -$_xmlrpcs_listMethods_sdoc=array(array('list of method names')); |
|
79 | -function _xmlrpcs_listMethods($server, $m=null) // if called in plain php values mode, second param is missing |
|
76 | +$_xmlrpcs_listMethods_sig = array(array($GLOBALS['xmlrpcArray'])); |
|
77 | +$_xmlrpcs_listMethods_doc = 'This method lists all the methods that the XML-RPC server knows how to dispatch'; |
|
78 | +$_xmlrpcs_listMethods_sdoc = array(array('list of method names')); |
|
79 | +function _xmlrpcs_listMethods($server, $m = null) // if called in plain php values mode, second param is missing |
|
80 | 80 | { |
81 | 81 | return PhpXmlRpc\Server::_xmlrpcs_listMethods($server, $m); |
82 | 82 | } |
83 | 83 | |
84 | -$_xmlrpcs_methodSignature_sig=array(array($GLOBALS['xmlrpcArray'], $GLOBALS['xmlrpcString'])); |
|
85 | -$_xmlrpcs_methodSignature_doc='Returns an array of known signatures (an array of arrays) for the method name passed. If no signatures are known, returns a none-array (test for type != array to detect missing signature)'; |
|
86 | -$_xmlrpcs_methodSignature_sdoc=array(array('list of known signatures, each sig being an array of xmlrpc type names', 'name of method to be described')); |
|
84 | +$_xmlrpcs_methodSignature_sig = array(array($GLOBALS['xmlrpcArray'], $GLOBALS['xmlrpcString'])); |
|
85 | +$_xmlrpcs_methodSignature_doc = 'Returns an array of known signatures (an array of arrays) for the method name passed. If no signatures are known, returns a none-array (test for type != array to detect missing signature)'; |
|
86 | +$_xmlrpcs_methodSignature_sdoc = array(array('list of known signatures, each sig being an array of xmlrpc type names', 'name of method to be described')); |
|
87 | 87 | function _xmlrpcs_methodSignature($server, $m) |
88 | 88 | { |
89 | 89 | return PhpXmlRpc\Server::_xmlrpcs_methodSignature($server, $m); |
90 | 90 | } |
91 | 91 | |
92 | -$_xmlrpcs_methodHelp_sig=array(array($GLOBALS['xmlrpcString'], $GLOBALS['xmlrpcString'])); |
|
93 | -$_xmlrpcs_methodHelp_doc='Returns help text if defined for the method passed, otherwise returns an empty string'; |
|
94 | -$_xmlrpcs_methodHelp_sdoc=array(array('method description', 'name of the method to be described')); |
|
92 | +$_xmlrpcs_methodHelp_sig = array(array($GLOBALS['xmlrpcString'], $GLOBALS['xmlrpcString'])); |
|
93 | +$_xmlrpcs_methodHelp_doc = 'Returns help text if defined for the method passed, otherwise returns an empty string'; |
|
94 | +$_xmlrpcs_methodHelp_sdoc = array(array('method description', 'name of the method to be described')); |
|
95 | 95 | function _xmlrpcs_methodHelp($server, $m) |
96 | 96 | { |
97 | 97 | return PhpXmlRpc\Server::_xmlrpcs_methodHelp($server, $m); |