From: franssen dot roland at gmail dot com Operating system: Linux PHP version: 5.4.10 Package: Reflection related Bug Type: Feature/Change Request Bug description:Expose eval'd code with reflection
Description: ------------ There should be a way to check if reflected code (object, function, etc.) is from a result of eval or not. For example; <?php $o = eval('class Foo { } return new Foo;'); $r = new ReflectionObject($o); if($r->isUserDefined()) { $file = $r->getFilename(); // do something with $file } ?> We cannot assume $file will contain a valid file path as it returns something like "/file.php:(2) eval()'d code" (rather than false imho). Adding ReflectionObject::isSynthetic() or isEval() would be a nice feature. Please consider to return false in getFilename() for eval'd as well so "getFilename() !== false" indicates a true user defined object. -- Edit bug report at https://bugs.php.net/bug.php?id=63901&edit=1 -- Try a snapshot (PHP 5.4): https://bugs.php.net/fix.php?id=63901&r=trysnapshot54 Try a snapshot (PHP 5.3): https://bugs.php.net/fix.php?id=63901&r=trysnapshot53 Try a snapshot (trunk): https://bugs.php.net/fix.php?id=63901&r=trysnapshottrunk Fixed in SVN: https://bugs.php.net/fix.php?id=63901&r=fixed Fixed in release: https://bugs.php.net/fix.php?id=63901&r=alreadyfixed Need backtrace: https://bugs.php.net/fix.php?id=63901&r=needtrace Need Reproduce Script: https://bugs.php.net/fix.php?id=63901&r=needscript Try newer version: https://bugs.php.net/fix.php?id=63901&r=oldversion Not developer issue: https://bugs.php.net/fix.php?id=63901&r=support Expected behavior: https://bugs.php.net/fix.php?id=63901&r=notwrong Not enough info: https://bugs.php.net/fix.php?id=63901&r=notenoughinfo Submitted twice: https://bugs.php.net/fix.php?id=63901&r=submittedtwice register_globals: https://bugs.php.net/fix.php?id=63901&r=globals PHP 4 support discontinued: https://bugs.php.net/fix.php?id=63901&r=php4 Daylight Savings: https://bugs.php.net/fix.php?id=63901&r=dst IIS Stability: https://bugs.php.net/fix.php?id=63901&r=isapi Install GNU Sed: https://bugs.php.net/fix.php?id=63901&r=gnused Floating point limitations: https://bugs.php.net/fix.php?id=63901&r=float No Zend Extensions: https://bugs.php.net/fix.php?id=63901&r=nozend MySQL Configuration Error: https://bugs.php.net/fix.php?id=63901&r=mysqlcfg