Alternatively, you could try to support polymorphism in classes :o) Then you wouldn't need null references...
class X { function a(); function a(MyObj $b); } Jevon Wright ----- Original Message ----- From: "Robert Silva" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Sunday, October 17, 2004 11:24 AM Subject: RE: [PHP-DEV] Type hints with null default values > PHP doesn't have a concept of a "null" reference though. So to say that > every other language allows it is not a valid argument. The other languages > allow it because the language supports it. And that seems to be what the > arguments against it centered around. > > I think a compromise would be to allow the argument to be optional but still > enforce the type hint. What this doesn't address fully is multiple optional > type hinted arguments. > > function A(ZObj $arg2=null, ZObj $arg3=null) {} > > How would you pass $arg3 if you didn't have anything to pass for $arg2. > Maybe that's just an inherent restriction of the language...to pass $arg3, > you have to pass a ZObj as $arg2. > > Someone else suggested adding null references to the language: > > ZObj $obj = null; > > But I don't think that is the right solution either not to mention the > nightmare of actually implementing it. > > > Bob > > -----Original Message----- > From: Cristiano Duarte [mailto:[EMAIL PROTECTED] > Sent: Saturday, October 16, 2004 3:01 PM > To: [EMAIL PROTECTED] > Subject: RE: [PHP-DEV] Type hints with null default values > > Robert Silva wrote: > > > I think Marcus B's final comments in the original discussion are right on > > track. > > > > Stab: I voted for NULL type hinted arguments before I voted against them. > > > > The main thing that changed my mind, is that in PHP there is no such thing > > as a NULL object. I came to the conclusion that PHP wasn't broken, my > > programming style/code was. > > > > My opinion is that they should stay as they are now although personally. > > > > Now with that said, I do think there needs to be a method to allow a type > > hinted parameter to be optional (but not necessarily null). > That's what I'm asking for. :-) > I'm not asking for null objects, just an optional parameter that must be an > object or a "null" reference. > All OO languages I've ever programmed had this kind of reference(Java, C++, > Delphi, etc.) > > Cristiano Duarte > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php > > -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php