Хранить значения в куки

0

У меня есть два вопроса.

Сначала мне нужно проверить, находится ли конкретное числовое значение в моей строке, которая хранится в файле 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... Просто имея один из этих пустых моментов.

  • 0
    Вы имеете в виду как php.net/strstr ?
  • 0
    Я обновил вопрос. Итак, мне нужно преобразовать обе строки в массивы и сделать array_merge ... возможно?
Теги:

1 ответ

0

Я думаю:

$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);

Ещё вопросы

Сообщество Overcoder
Наверх
Меню