Bug #72569 [Opn->Fbk]: DOTNET/COM array parameters broke in PHP7 (regresion)
| From: | ab@php.net | Date: | Mon, 11 Jul 2016 13:22:51 +0000 |
| Subject: | Bug #72569 [Opn->Fbk]: DOTNET/COM array parameters broke in PHP7 (regresion) | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-202198@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=72569&edit=1
ID: 72569
Updated by: ab@php.net
Reported by: deivid dot garcia dot garcia at gmail dot com
Summary: DOTNET/COM array parameters broke in PHP7
(regresion)
-Status: Open
+Status: Feedback
Type: Bug
Package: COM related
Operating System: Windows 10.1
PHP Version: 7.0.8
Block user comment: N
Private report: N
New Comment:
Thanks for the report. I'm willing to fix this issue, but lack on a way to reproduce. Could you
please supply a complete code for the C# class and the way to bind it in PHP, so debugging can be
done?
Thanks.
Previous Comments:
------------------------------------------------------------------------
[2016-07-09 20:08:31] deivid dot garcia dot garcia at gmail dot com
Description:
------------
Arrays passed to .Net when calling .Net object methods using COM class (probably DOTNET too but have
not tested) arrive as empty arrays.
This was NOT happening in PHP < 7, it's a regression. Other simple types are passed on
properly (such as strings).
Test script:
---------------
The bug CANNOT be demonstrated without building a specific .Net dll that takes an array as input.
In .Net:
public object MyNiceMethod(object[] parameters)
{
// In PHP7 parameters comes in as an EMPTY array
// when in PHP < 7 it was an array of string, integers and whatever
// you passed in from PHP.
}
In PHP:
$a = new COM("{CLASSID}");
$a->MyNiceMethod(["string1", "string2", 56, "string3", [1, 2, 3]]);
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=72569&edit=1