Xinchen Hui
e83f0261c0
MFH: Fixed bug #60968 (Late static binding doesn't work with ReflectionMethod::invokeArgs())
2012-03-02 03:36:30 +00:00
Xinchen Hui
30f63e4152
Fixed bug #60968 (Late static binding doesn't work with ReflectionMethod::invokeArgs())
2012-02-03 16:27:35 +00:00
Dmitry Stogov
b515bfbdfb
Improved traits implementation. Now to support __CLASS__ constant in traits php doesn't have to copy the complete compiled method, but can reuse the same code. The resolution of __CLASS__ constants in methods defined in traits are delayed till run-time. This approach also made possible to use __CLASS__ constant as default value for traits properties and method arguments.
2012-01-17 08:09:13 +00:00
Xinchen Hui
3db55c8233
Fixed bug #60367 (Reflection and Late Static Binding)
2011-11-24 09:16:11 +00:00
Xinchen Hui
fe96e8e64c
Fixed bug #60367 (Reflection and Late Static Binding)
2011-11-24 09:16:11 +00:00
Xinchen Hui
b548293b99
Fixed bug #60357 (__toString() method triggers E_NOTICE "Array to string conversion")
2011-11-22 10:11:06 +00:00
Stanislav Malyshev
38ff70ef25
Commit Gustavo's closure rebinding patch as desided by vote
2011-09-07 06:46:27 +00:00
Pierre Joye
bb4f29c234
- don't test dir sep
2011-09-06 07:07:23 +00:00
Sebastian Bergmann
b04a052f70
Close #55490 .
2011-08-26 07:40:31 +00:00
Felipe Pena
f1967befc8
- Fix test
2011-05-14 01:00:59 +00:00
Gustavo André dos Santos Lopes
fac1e87171
- Fixed bug #53915 : ReflectionClass::getConstant(s) emits fatal error on
...
constants with self::.
- Reflown some NEWS entries to have lines no longer than 80 chars.
2011-02-03 12:38:25 +00:00
Gustavo André dos Santos Lopes
f2329f1f4b
- Fixed bug #53915 : ReflectionClass::getConstant(s) emits fatal error on
...
constants with self::.
- Reflown some NEWS entries to have lines no longer than 80 chars.
2011-02-03 12:38:25 +00:00
Scott MacVicar
6144da7e35
Silently casting an empty string, null or false into an object by adding a property
...
is pretty non-intuitive. If the same value was 1 or true you get a warning and it halts.
Since we can't break BC completely (yet) lets bump this from E_STRICT.
Also added a new section to UPGRADING for engine changes.
<?php
$x = '';
// $x = null;
// $x = false;
$x->baz = 1;
var_dump($x);
$y = 1;
$y->baz = 1;
var_dump($y);
2010-12-31 16:57:45 +00:00
Johannes Schlüter
dabb79bf3d
- Improve test
2010-11-21 12:28:10 +00:00
Johannes Schlüter
ac4f3422bc
- Improve test
2010-11-21 12:28:10 +00:00
Johannes Schlüter
5a1e9d1d6b
- Fix #52854 (ReflectionClass::newInstanceArgs does not work for classes without constructors
2010-11-21 12:24:09 +00:00
Johannes Schlüter
9ea04e1e46
- Fix #52854 (ReflectionClass::newInstanceArgs does not work for classes without constructors
2010-11-21 12:24:09 +00:00
Felipe Pena
224bfb38f7
- Fixed bug #53366 (Reflection doesnt get dynamic property value from getProperty())
2010-11-20 22:53:55 +00:00
Felipe Pena
1ac484d1a1
- Fixed bug #53366 (Reflection doesnt get dynamic property value from getProperty())
2010-11-20 22:53:55 +00:00
Gustavo André dos Santos Lopes
b5b4f94a4c
- Fixed ReflectionProperty::isDefault() giving a wrong result for properties
...
obtained with ReflectionClass::getProperties().
2010-10-26 18:47:10 +00:00
Gustavo André dos Santos Lopes
be77a48a71
- Fixed ReflectionProperty::isDefault() giving a wrong result for properties
...
obtained with ReflectionClass::getProperties().
2010-10-26 18:47:10 +00:00
Gustavo André dos Santos Lopes
e5c7fae82c
- Added ReflectionParameter::canBePassedByValue().
2010-10-26 15:01:36 +00:00
Dmitry Stogov
f2df6a4a3e
- Improved memory usage
...
. zend_function.pass_rest_by_reference is replaced by
ZEND_ACC_PASS_REST_BY_REFERENCE in zend_function.fn_flags
. zend_function.return_reference is replaced by ZEND_ACC_RETURN_REFERENCE
in zend_function.fn_flags
. zend_arg_info.required_num_args removed. it was needed only for internal
functions. Now the first arg_info for internal function (which has special
meaning) is represented by zend_internal_function_info structure.
. zend_op_array.size, size_var, size_literal, current_brk_cont,
backpatch_count moved into CG(context), because they are used only during
compilation.
. zend_op_array.start_op is moved into EG(start_op), because it's used
only for 'interactive' execution of single top-level op-array.
. zend_op_array.done_pass_two is replaced by ZEND_ACC_DONE_PASS_TWO in
zend_op_array.fn_flags.
. op_array.vars array is trimmed (reallocated) during pass_two.
. zend_class_entry.constants_updated is replaced by
ZEND_ACC_CONSTANTS_UPDATED in zend_class_entry.ce_flags
. the size of zend_class_entry is reduced by sharing the same memory space
by different information for internal and user classes.
See zend_class_inttry.info union.
2010-09-15 07:38:52 +00:00
Felipe Pena
03df7fce82
- Fixed test
2010-09-09 21:46:29 +00:00
Felipe Pena
264d65bd6e
- Fixed test
2010-09-09 21:46:29 +00:00
Felipe Pena
cb1d315b7d
- Fix tests
2010-07-31 22:10:43 +00:00
Felipe Pena
ce72f33674
- Fixed tests
2010-07-06 00:25:52 +00:00
Felipe Pena
4d3944f941
- Fixed bug #52057 (ReflectionClass fails on Closure class)
2010-06-11 23:37:55 +00:00
Felipe Pena
becc2bb671
- Fixed bug #52057 (ReflectionClass fails on Closure class)
2010-06-11 23:37:55 +00:00
Felipe Pena
f10c7890c2
- Fix test
2010-06-03 00:13:27 +00:00
Felipe Pena
c98c39b1c1
- Added ReflectionClass::isCloneable() [DOC]
2010-06-02 15:29:42 +00:00
Johannes Schlüter
4158f7e122
- More trait reflection work
...
#- I'm not happy about ReflectionClass::getTraitAliases, yet
2010-05-30 01:00:45 +00:00
Felipe Pena
2d63683ec3
- Fixed ReflectionClass::isTrait() checking (to not identify abstract class as Trait)
2010-05-29 22:08:51 +00:00
Felipe Pena
23dfc1fa9d
- Missing Trait check fix
2010-05-29 21:55:19 +00:00
Felipe Pena
3c4ff06ca7
- Fixed wrong abstract class identification (it was identified as a Trait)
2010-05-29 21:48:56 +00:00
Johannes Schlüter
19afc82e28
- Make reflection aware of traits
2010-05-29 20:40:58 +00:00
Johannes Schlüter
1afd50766c
- Fix tests
2010-05-29 20:34:25 +00:00
Felipe Pena
c4be9c3890
- Fixed bug #51905 (ReflectionParameter fails if default value is an array with an access to self::)
2010-05-26 00:00:58 +00:00
Felipe Pena
79d2aaf0f1
- Fixed bug #51905 (ReflectionParameter fails if default value is an array with an access to self::)
2010-05-26 00:00:58 +00:00
Felipe Pena
f3009cb596
- Fixed bug #51911 (ReflectionParameter::getDefaultValue() memory leaks with constant array)
2010-05-25 22:46:17 +00:00
Felipe Pena
1168cdc323
- Fixed bug #51911 (ReflectionParameter::getDefaultValue() memory leaks with constant array)
2010-05-25 22:46:17 +00:00
Dmitry Stogov
c5237d82bf
Added caches to eliminate repeatable run-time bindings of functions, classes, constants, methods and properties
2010-05-24 14:11:39 +00:00
Stanislav Malyshev
c93a4f192b
restore $this support for closures to its former glory
2010-04-19 19:45:03 +00:00
Johannes Schlüter
26af575926
Add ReflectionZendExtension class and --rz option to CLI
2010-03-30 22:35:23 +00:00
Johannes Schlüter
4dc1cef4fe
Use php_error_docref instead of zend_error
2010-03-30 21:02:32 +00:00
Johannes Schlüter
a6c9e432d4
Use php_error_docref instead of zend_error
2010-03-30 21:02:32 +00:00
Johannes Schlüter
347e2bce22
Add ReflectionExtension::isTemporary() and ReflectionExtension::isPersistent().
2010-03-30 20:50:42 +00:00
Felipe Pena
03bec4299f
- Fixed tests
2010-03-06 23:58:35 +00:00
Felipe Pena
eea23b2794
- Fixed bug #50152 (ReflectionClass::hasProperty hehaves like isset() not property_exists)
...
[5_2 is OK]
2009-11-11 18:52:12 +00:00
Felipe Pena
8e91d46481
- Fixed bug #49719 (ReflectionClass::hasProperty returns true for a private property in base class)
2009-11-01 15:12:34 +00:00