Bug #72922 [NEW]: COM called from PHP does not return out parameters

From: Date: Mon, 22 Aug 2016 14:55:54 +0000
Subject: Bug #72922 [NEW]: COM called from PHP does not return out parameters
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-203491@lists.php.net to get a copy of this message
From: mistr111 at yahoo dot com Operating system: Windows Server 2008 R2 Standard PHP version: 7.0.10 Package: COM related Bug Type: Bug Bug description:COM called from PHP does not return out parameters Description: ------------ I have a problem concerning COM support in PHP 7. I have been using COM called from PHP applications for a very long time. After calling new COM(... , I used to call methods with several in/out parameters. The result is used just to check status of the call but data is extracted from in/out parameters. Everything has worked just fine in different PHP versions for almost a decade till I tried PHP 7. I am able to call methods and can access results without problems, but in/out parameters stay the same after the call. I carried out tests on the same machine with PHP 5.6 and everything worked OK. When I switched to PHP 7 or beta PHP 7.1, output parameters were unaffected only result was correctly filled out. (It did not matter whether I used 32-bit or 64-bit versions). I used Windows Server 2008 R2 Standard for testing. Binaries for PHP from http://windows.php.net/download/ and http://windows.php.net/qa/ (PHP 7.0.10 - VC14 x86 Thread Safe, VC14 x64 Thread Safe and PHP 7.1.0 beta2) For Apache from https://www.apachelounge.com/download/ (Apache 2.4.23 Win64, Apache 2.4.23 Win32) with appropriate,latest C++ Redistributables installed I combined 32-bit versions of COM, Apache, PHP and then 64-bit versions with the same result. Test script: --------------- <?php $comTest = new COM("comTest.comTestIF") or die("Unable to instantiate comTest"); $parIn="111";$parOut1="";$parOut2=""; $result = $comTest->test($parIn,$parOut1,$parOut2); // after the call $parOut1,$parOut2 parameters are unaffected although they are changed inside com. Only result is correct ?> -- Edit bug report at https://bugs.php.net/bug.php?id=72922&edit=1 -- Try a snapshot (PHP 5.4): https://bugs.php.net/fix.php?id=72922&r=trysnapshot54 Try a snapshot (PHP 5.5): https://bugs.php.net/fix.php?id=72922&r=trysnapshot55 Try a snapshot (trunk): https://bugs.php.net/fix.php?id=72922&r=trysnapshottrunk Fixed in SVN: https://bugs.php.net/fix.php?id=72922&r=fixed Fixed in release: https://bugs.php.net/fix.php?id=72922&r=alreadyfixed Need backtrace: https://bugs.php.net/fix.php?id=72922&r=needtrace Need Reproduce Script: https://bugs.php.net/fix.php?id=72922&r=needscript Try newer version: https://bugs.php.net/fix.php?id=72922&r=oldversion Not developer issue: https://bugs.php.net/fix.php?id=72922&r=support Expected behavior: https://bugs.php.net/fix.php?id=72922&r=notwrong Not enough info: https://bugs.php.net/fix.php?id=72922&r=notenoughinfo Submitted twice: https://bugs.php.net/fix.php?id=72922&r=submittedtwice register_globals: https://bugs.php.net/fix.php?id=72922&r=globals PHP 4 support discontinued: https://bugs.php.net/fix.php?id=72922&r=php4 Daylight Savings: https://bugs.php.net/fix.php?id=72922&r=dst IIS Stability: https://bugs.php.net/fix.php?id=72922&r=isapi Install GNU Sed: https://bugs.php.net/fix.php?id=72922&r=gnused Floating point limitations: https://bugs.php.net/fix.php?id=72922&r=float No Zend Extensions: https://bugs.php.net/fix.php?id=72922&r=nozend MySQL Configuration Error: https://bugs.php.net/fix.php?id=72922&r=mysqlcfg

« previous php.bugs (#203491) next »