Bug #17732 Updated: decode_request - reference vars depracated
| From: | sniper@php.net | Date: | Sun, 16 Jun 2002 02:24:29 +0000 |
| Subject: | Bug #17732 Updated: decode_request - reference vars depracated | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-10540@lists.php.net to get a copy of this message | ||
ID: 17732
Updated by: sniper@php.net
Reported By: ramses0@yahoo.com
-Status: Open
+Status: Closed
Bug Type: XMLRPC-EPI related
Operating System: Linux
PHP Version: 4.1.2
New Comment:
This bug has been fixed in CVS. You can grab a snapshot of the
CVS version at http://snaps.php.net/. In case this was a
documentation
problem, the fix will show up soon at http://www.php.net/manual/.
In case this was a PHP.net website problem, the change will show
up on the PHP.net site and on the mirror sites.
Thank you for the report, and for helping us make PHP better.
Previous Comments:
------------------------------------------------------------------------
[2002-06-12 17:50:02] ramses0@yahoo.com
Using the following demonstration RPC request, the
function xmlrpc_decode_request (apparently) does not
correctly update the passed in parameter $method_name,
as described in the documentation on:
http://xmlrpc-epi.sourceforge.net/main.php?t=php_api
On a hunch, I tried changing the call to:
xmlrpc_decode_request($xml, &$method);
to use call-time pass by reference. It then worked,
but call time pass by reference is depracated:
Warning: Call-time pass-by-reference has been
deprecated - argument passed by value; If you would
like to pass it by reference, modify the declaration of
xmlrpc_decode_request(). If you would like to enable
call-time pass-by-reference, you can set
allow_call_time_pass_reference to true in your INI
file. However, future versions may not support this any
longer.
As an aside- it appears that you cannot "swallow" the warning by doing
an $results = @decode( $a, &$b )...
it stil gives the "warning, depracated" message. So
that is possibly another bug. I have grepped through
the source trees somewhat, but couldn't find much examples
of functions directly affecting their passed in values
(except "sort", which is pretty complicated).
Thanks-
--Robert
(bugreport is mirrored at the sf.net pages, but that
area appears to be mildly unmaintained)
<?php
$request = <<< END
<?xml version="1.0"?>
<methodCall>
<methodName>greeting</methodName>
<params>
<param>
<value><string>Dan</string></value>
</param>
</params>
</methodCall>
END;
// <?
/* ** DEBUGGING INFORMATION ** */
echo "<pre>";
echo "<b>Request:</b><br>";
print_r( $request );
// decode the request
$method_name = '';
$stuff = xmlrpc_decode_request( $request, $method_name );
echo "<b>Results:</b><br>";
print_r( $stuff );
echo "<b>Method:</b><br>";
print_r( $method_name );
echo "</pre>";
?>
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=17732&edit=1