(PHP 3, PHP 4)
int setcookie (string name [, string value [, int expire [, string path [, string domain [, int secure]]]]])
setcookie() определяет куку для отправки вместе с остальной header-информацией. Куки обязаны быть отправлены до любых других шапок/headers (это ограничение кук, а не РНР). Это требует, чтобы вы помещали вызовы этой функции перед тэгами <html> или <head>.
Все аргументы, кроме name, являются необязательными. Если имеется только аргумент name, кука с этим именем будет удалена с удалённого клиента. Вы можете также заместить любой аргумент пустой строкой (""), чтобы пропустить этот аргумент. Аргументы expire и secure это целые числа/integer и они не могут быть пропущены с помощью пустой строки. В них используйте нуль (0). Аргумент expire это обычное Unix time integer, возвращаемое функциями time() или mktime(). Аргумент secure указывает, что данная кука должна передаваться только через секретное HTTPS-соединение.
После того как куки установлены, доступ к ним может быть получен при загрузке следующей страницы через массив $_COOKIE (который вызывается $HTTP_COOKIE_VARS в версиях PHP до 4.1.0).
Обычные ловушки:
Куки будут невидимы до тех пор, пока не будет загружена следующая страница.
Куки обязаны быть удалены с теми же параметрами, с которыми были установлены.
В PHP 3 множественные вызовы setcookie() в том же скрипте могут быть выполнены в реверсном порядке. Если вы пытаетесь удалить одну куку до вставки другой, вы должны сделать вставку до удаления. В PHP 4 множественные вызовы setcookie() выполняются в порядке вызова.
Далее идут примеры отправки кук:
При удалении куки вы должны убедиться, что дата окончания действия прошла, чтобы переключить механизм в вашем браузере. Далее идут примеры удаления куки, созданной в предыдущем примере: