O PHP suporta transparentemente cookies HTTP. Cookies são um mecanismo para guardar dados no navegador remoto possibilitando o acompanhamento ou identificação de usuários que retornam. Você pode criar cookies usando a função setcookie() ou setrawcookie(). Os cookies são uma parte do cabeçalho HTTP, logo setcookie() precisa ser chamada antes que qualquer outro dado seja enviado ao navegador. Esta é a mesma limitação que a função header() tem. Você pode usar as funções de output buferizado para atrasar as impressões do script até que você tenha decidido ou não configurar qualquer cookie ou enviar mais headers.
Qualquer cookie enviado por você para o cliente automaticamente será incluido na auto-global $_COOKIE se variables_order contém "C". Se você deseja assimilar vários valores em um único cookie, simplesmente acrescente [] ao nome do cookie.
Dependendo da register_globals, variáveis regulares do PHP podem ser criadas para cookies. Contudo, não é recomendado confiar neste recurso que pode ser frequentemente desabilitado por motivos de segurança. $HTTP_COOKIE_VARS é também definido nas versões anteriores do PHP, também, quando a variável de configuração track_vars estiver ativa. (Esta diretiva é obrigatoriamente ligada a partir do PHP 4.0.3.)
Para mais detalhes, incluindo comentários sobre problemas de browsers, veja as funções setcookie() e setrawcookie() .