Невозможно установить cookie, чтобы никогда не истекать. Однако, если вы периодически обновляете куки, то они могут эффективно жить вечно.
Лично я хотел бы установить куки в течение 30 дней и обновлять их так часто. Один из способов сделать это может быть:
setcookie("WHMCSAffiliateID",$add,time()+30*24*60*60);
setcookie("Renew-cookies","1",time()+10*24*60*60);
Тогда на каждом PageLoad:
if(isset($_COOKIE['WHMCSAffiliateID']) && !isset($_COOKIE['Renew-cookies'])) {
setcookie("WHMCSAffiliateID",$_COOKIE['WHMCSAffiliateID'],time()+30*24*60*60);
setcookie("Renew-cookies","1",time()+10*24*60*60);
}
Возможные дублируют http://stackoverflow.com/questions/3290424/set-a-cookie-to-never- expire – Elbek