Bug #73089 [Opn]: SOAP pass dictionary parameter

From: Date: Fri, 16 Dec 2016 21:10:27 +0000
Subject: Bug #73089 [Opn]: SOAP pass dictionary parameter
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-206081@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=73089&edit=1

 ID:                 73089
 Updated by:         nikic@php.net
 Reported by:        matteo dot veggia at gmail dot com
 Summary:            SOAP pass dictionary parameter
 Status:             Open
 Type:               Bug
 Package:            SOAP related
 Operating System:   Windows
 PHP Version:        7.1.0
 Block user comment: N
 Private report:     N

 New Comment:

Any one of the snapshot builds for 7.0, 7.1 or master should do. Doesn't matter which one you
use.


Previous Comments:
------------------------------------------------------------------------
[2016-12-16 14:51:37] matteo dot veggia at gmail dot com

@nikic: With what snapshot?

------------------------------------------------------------------------
[2016-12-13 17:02:10] nikic@php.net

I've applied a few more fixes in https://github.com/php/php-src/commit/4b2cc62e266cb39d0728dc473435fdf6ab4e8e89,
based on guesswork as to where the issue might be. Can you please test a snapshot build
(http://windows.php.net/snapshots/ from tomorrow) to see if the issue is resolved?

------------------------------------------------------------------------
[2016-12-13 13:24:51] matteo dot veggia at gmail dot com

I've found another element which it can explain more considerations:
If I use

$argsSOAP->Data = Array();
array_push($argsSOAP->Data, Array("Key"=>"A",
"Value"=>"1"));
array_push($argsSOAP->Data, Array("Key"=>"B",
"Value"=>"2"));
$resSOAP = $soapClient->TestRoutineDictionary($argsSOAP);

the XML is wrong (read last posts). 
BUT... if I use a "support" variable called "tmparr":

$tmparr = Array();
array_push($tmparr, Array("Key"=>"A", "Value"=>"1"));
array_push($tmparr, Array("Key"=>"B", "Value"=>"2"));
$argsSOAP->Data = $tmparr;
$resSOAP = $soapClient->TestRoutineDictionary($argsSOAP);

IT WORKS!!!

Simple question... why?

------------------------------------------------------------------------
[2016-12-13 12:50:06] matteo dot veggia at gmail dot com

Same problem with PHP 7.0.14.
Have you tried my code? Have you the same problem?

------------------------------------------------------------------------
[2016-12-05 07:27:56] matteo dot veggia at gmail dot com

@sjon: the problem persist without apache, executing manually in cmd the php.exe with a php test
file.
Can you try this problem? Why you don't simulate it? It is easy, you need only an iis server, a
simple wcf and the php code.
Am I the only person who has this problem?

------------------------------------------------------------------------


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    https://bugs.php.net/bug.php?id=73089


--
Edit this bug report at https://bugs.php.net/bug.php?id=73089&edit=1


Thread (28 messages)

« previous php.bugs (#206081) next »