Bug #73089 [Opn]: SOAP pass dictionary parameter

From: Date: Mon, 19 Dec 2016 12:42:51 +0000
Subject: Bug #73089 [Opn]: SOAP pass dictionary parameter
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-206131@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 User updated by: matteo dot veggia at gmail dot com 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: PHP 7.0.14: The bug is still here PHP 7.1: IT WORKS!!!!!!!!!!!!!!!!!! Then can you check in 7.0.14? Previous Comments: ------------------------------------------------------------------------ [2016-12-16 21:10:26] nikic@php.net Any one of the snapshot builds for 7.0, 7.1 or master should do. Doesn't matter which one you use. ------------------------------------------------------------------------ [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? ------------------------------------------------------------------------ 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

« previous php.bugs (#206131) next »