Overview
Dingo has built in functions for managing cookies. The cookie class is always avaliable to use in your applications and does not have to be loaded.
Set
Sets a cookie and takes one argument which is an associative array.
cookie::set(array( 'name'=>'user', 'value'=>'Evan' ));
The above sets a cookie named user with the value Evan and it will expire when the user closes his/her browser. Here is the same example, except the cookie will expire in one month:
cookie::set(array( 'name'=>'user', 'value'=>'Evan', 'expire'=>'+1 months' ));
Here is an example using all of the settings:
cookie::set(array( 'name'=>'user', 'value'=>'Evan', 'expire'=>'+1 years +6 months +3 weeks +5 days +2 hours +1 minutes +24 seconds', 'path'=>'/', 'domain'=>'evanbot.com', 'secure'=>TRUE, 'httponly'=>TRUE ));
All of the settings - except for the expire setting - work exactly the same as the corrisponding ones in the PHP function setcookie.
The expire setting can be given a number of years, months, weeks, days, hours, minutes and seconds (as shown above) in any combination.
Delete
Deletes a cookie. Takes the same settings as cookie::set minus the value and expire settings.
cookie::delete(array( 'name'=>'user', 'path'=>'/', ));
Optionally, you can set the first argument as just the name of the cookie. This will delete the cookie using the defualt settings.
cookie::delete('user');
This is the same as doing this:
cookie::delete(array( 'name'=>'user', 'path'=>'/', 'domain'=>FALSE, 'secure'=>FALSE, 'httponly'=>FALSE ));
Or this:
cookie::delete(array( 'name'=>'user', 'path'=>'/' ));
© 2008 - 2010 Evan Byrne