Perhaps it makes more sense to just give it an array there.  I agree that
"+3600" is not great either as I am sure someone will try to just pass
+3600 without the quotes.

How about this:

  setcookie('name',$value,array('Max-Age'=>3600, 'Comment'=>$comment, 'Path'=>'/');

So, in this overloaded form you just have 3 arguments and you put all your
args in that 3rd array arg.

RFC 2109 lists all the attributes possible.  Version and Comment are the
other two we don't currently have a way to send, so if we address Max-Age
we should also add a way to send those other two.  It even says the
version field is required, but that must be a rather relaxed use of the
term, 'required'.

-Rasmus

On Tue, 17 Aug 2004, Andi Gutmans wrote:

> I think overloading the type is a good idea. Might even be best to use
> something which doesn't resemble a number for instance "Max-Age: 3600". We
> could just send that out in the header if it's a string (although it might
> leave room for typos).
> Any other ideas or sexier ways to do the overloading?
>
> Andi
>
> At 04:55 PM 8/17/2004 -0700, Rasmus Lerdorf wrote:
> >No, I think he is saying use Max-Age if the expire is before Sep. 2001.
> >ie. if the expire timestamp looks like a small value and not a timestamp,
> >treat it like a max-age, otherwise if it looks big enough to be a real
> >unix timestamp, make it a normal absolute expiry.
> >
> >While that is an idea that will probably work, it seems messy to me.  Code
> >with hardcoded expiries in the past that previously wouldn't cause any
> >cookies to be sent will now suddenly start sending cookies.
> >
> >I think I would rather see a separate function, or perhaps overload it by
> >type instead.  As in, SetCookie("foo","bar","+3600");
> >
> >The fact that it is a string that start with a + indicates a Max-Age
> >instead of an integer timestamp.  This way the separation is clear.
> >
> >-Rasmus
> >
> >On Tue, 17 Aug 2004, Andi Gutmans wrote:
> >
> > > If I understand correctly, what you're saying is that we should always use
> > > Max-Age and just do the conversion ourselves?
> > >
> > > Andi
> > >
> > > At 01:46 AM 8/18/2004 +0200, Christian Schneider wrote:
> > > >Andi Gutmans wrote:
> > > >>Not sure if an how this could be added to setcookie() because of the
> > > >>already rich amount of parameters it accepts. Would it make sense to have
> > > >>something like setcookie_max_age() or something similar?
> > > >
> > > >I think we should overload the expire parameter. Somewhat ugly but
> > > >transforms the function into what it really should look like. Adding
> > > >another parameter or even function complicates the life of everyone in the
> > > >future and since a IMHO doable way exists I'd say we should keep it
> > simple.
> > > >
> > > >Proposal: expire < 1000000000 (Sun Sep  9 01:46:40 2001) uses Max-Age and
> > > >allows up to 31 years of Max-Age. If properly documented this should be ok
> > > >IMHO.
> > > >
> > > >If people are afraid that someone hardcoded something before Sun Sep  9
> > > >2001 in their source code then we could lower it to 100000000 (Sat Mar 3
> > > >09:46:40 1973, 3.1 years) but I'd prefer the previous value.
> > > >
> > > >My .02$,
> > > >- Chris
> > >
> > > --
> > > 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

Reply via email to