У меня есть два вопроса.
Сначала мне нужно проверить, находится ли конкретное числовое значение в моей строке, которая хранится в файле cookie, а если нет - добавьте его.
$newVal = 4;
$oldStr = $_COOKIE['myCookie']; // get previous values (##, ###, ### ...)
if (!in_array($newVal, explode(',', $oldStr ))) {
$newStr = $oldStr.', '.$newVal;
}
setcookie('myCookie', $newStr, time()+3600*24*30*12);
Позже, на другой странице, мне нужно сравнить значения, хранящиеся в моем cookie, с заданным значением из моего db, и если хотя бы один из них не находится в этом укусе, мне нужно добавить его к нему.
$dbStr = '10, 20, 30, 40';
// compare $dbStr against $_COOKIE['myCookie']
// updated will be $dbStr = '10, 20, 30, 40, 4';
Теперь, я действительно не уверен, как сравнить жало в cookie с $ dbStr... Просто имея один из этих пустых моментов.
Я думаю:
$dbStr = '10, 20, 30, 40';
$curCookie = explode(', ', $_COOKIE['myCookie'] );
$dbValues = explode(', ', $dbStr);
foreach ($curCookie as $value) {
if(!in_array($value, $dbValues)
$dbValues[] = $value
}
$dbStr = implode(', ', $dbValues);