On 13 Jul 2014, at 17:29, Rowan Collins <rowan.coll...@gmail.com> wrote:

> It's an interesting thought, but we currently have the object keyword for 
> that particular use case. In some languages, having a base object is useful 
> because functionality can be defined there, but PHP provides no way of 
> altering existing classes, limiting that use too.

There’s no such type hint though:

$ php -r 'function foo(object $x) {} foo(new StdClass);’
PHP Catchable fatal error:  Argument 1 passed to foo() must be an instance of 
object, instance of stdClass given, called in Command line code on line 1 and 
defined in Command line code on line 1

Perhaps one should be added? Not in this RFC though, obviously.

> Personally, I'm too much of a fan of PHP's arrays to bother with stdClass at 
> all; if you want to future-proof things, it's not that hard to write 
> placeholders ready for later implementation.

I’m thinking more about dealing with JSON and such which give you an object. 
Perhaps you might have a FooBar->fromObject() method that can be passed another 
FooBar to clone it, or an object decoded from JSON. Though in that particular 
case there’s no real need for a type hint.
--
Andrea Faulds
http://ajf.me/





--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to