summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Cowburn <salathe@php.net>2011-11-02 13:24:46 +0000
committerPeter Cowburn <salathe@php.net>2011-11-02 13:24:46 +0000
commit9b86852d6ee2976b68e81f8fb8e1b44de3d7c631 (patch)
treef772c9f288dd938e6c033c4b0bfcc4280b9ca6fe
parentc1d520d19d1eb530c6c5f4dac098f3384511409b (diff)
downloadphp-git-9b86852d6ee2976b68e81f8fb8e1b44de3d7c631.tar.gz
add 3rd parameter to arg info for splfileobject fgetcsv/setcsvcontrol (bug #60201)
-rw-r--r--NEWS2
-rwxr-xr-xext/spl/spl_directory.c1
-rw-r--r--ext/spl/tests/bug60201.phpt30
3 files changed, 33 insertions, 0 deletions
diff --git a/NEWS b/NEWS
index b86912b1f3..e3444cca7d 100644
--- a/NEWS
+++ b/NEWS
@@ -26,6 +26,8 @@ PHP NEWS
. Reverted changes that required constructor overrides to invoke the parent
constructor in several SPL classes and applied 5.3 fixes instead.
Related bugs: #54384, #55175 and #55300.
+ . Fixed bug #60201 (SplFileObject::setCsvControl does not expose third
+ argument via Reflection). (Peter)
20 Oct 2011, PHP 5.4.0 beta2
- General improvements:
diff --git a/ext/spl/spl_directory.c b/ext/spl/spl_directory.c
index db7d6791df..2223c3a000 100755
--- a/ext/spl/spl_directory.c
+++ b/ext/spl/spl_directory.c
@@ -2877,6 +2877,7 @@ ZEND_END_ARG_INFO()
ZEND_BEGIN_ARG_INFO_EX(arginfo_file_object_fgetcsv, 0, 0, 0)
ZEND_ARG_INFO(0, delimiter)
ZEND_ARG_INFO(0, enclosure)
+ ZEND_ARG_INFO(0, escape)
ZEND_END_ARG_INFO()
ZEND_BEGIN_ARG_INFO_EX(arginfo_file_object_fputcsv, 0, 0, 1)
diff --git a/ext/spl/tests/bug60201.phpt b/ext/spl/tests/bug60201.phpt
new file mode 100644
index 0000000000..68a5daabfd
--- /dev/null
+++ b/ext/spl/tests/bug60201.phpt
@@ -0,0 +1,30 @@
+--TEST--
+Bug #60201 (SplFileObject::setCsvControl does not expose third argument via Reflection)
+--FILE--
+<?php
+
+$method = new ReflectionMethod('SplFileObject', 'setCsvControl');
+$params = $method->getParameters();
+var_dump($params);
+
+?>
+===DONE===
+--EXPECTF--
+array(3) {
+ [0]=>
+ &object(ReflectionParameter)#%d (1) {
+ ["name"]=>
+ string(9) "delimiter"
+ }
+ [1]=>
+ &object(ReflectionParameter)#%d (1) {
+ ["name"]=>
+ string(9) "enclosure"
+ }
+ [2]=>
+ &object(ReflectionParameter)#%d (1) {
+ ["name"]=>
+ string(6) "escape"
+ }
+}
+===DONE===