Re: [PATCH] Make var_export() output "(object)array(..." insteadof"stdClass::__set_state(..." for stdClass
| From: | Andrea Faulds | Date: | Thu, 12 Jul 2018 11:46:26 +0000 |
| Subject: | Re: [PATCH] Make var_export() output "(object)array(..." insteadof"stdClass::__set_state(..." for stdClass | ||
| References: | 1 2 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-102787@lists.php.net to get a copy of this message | ||
Christoph M. Becker wrote:
On 14.03.2017 at 19:57, Andrea Faulds wrote:And so it was done: https://github.com/php/php-src/commit/e4e9cd835550990a6b8df7c61d59b6cc0da9b5b2 Thanks, Cristoph! :) -- Andrea Faulds https://ajf.me/Since stdClass has no __set_state method, var_export() produces unusable output if given an object of that class. I wrote a patch that would make var_export() produce a cast to object instead, which could be evaluated to get back a stdClass: https://github.com/php/php-src/pull/2420 Any thoughts/comments? If you're wondering about whether a __set_state method should be added to stdClass, I posted some thoughts in the pull request discussion already.FTR: If nobody objects, I'll merge this PR into master on 2018-07-12, so that it goes into PHP 7.3. See <https://github.com/php/php-src/pull/2420#issuecomment-402561913>.