Как проверить, если isset один за другим, пока не сделано

Я хотел бы проверить isset($_COOKIE['x'])так, что он петляет, пока не найдет свободное место.
Например:

if(isset($_COOKIE['x']) {
    if(isset($_COOKIE['x2']) {
        if(isset($_COOKIE['x3']) {
            //etc
        }
    }
} else {
    //do something
}

И так далее и тому подобное. Как это можно создать?

2 ответа

  1. $x=0;
    
    while($x>=0)
    {
    $x=$x+1;
    $string = "x" . $x;
        if(isset($_COOKIE[$string])
        {
        break;
        }
    }
    echo $x;
    

    Сработает ли это? Вроде просто и будет работать вечно (или до тех пор, пока он не истечет), если cookie никогда не будет найден.

  2. Без использования цикла и сохранения боли вы можете просто добавить массив в cookie и добавить новые индексы, когда это необходимо.

    $_COOKIE['x'] = array(); //Somewhere when you start
    //...
    $_COOKIE['x'][] = "the value";