Сохранять значение переменной внутри функции

Чтобы сохранять значение переменной внутри функции, её надо создать через ключевое слово static.

function getData($value) {
    static $cache = null;
    if (!$cache) {
        $cache = $value;
    }

    return $cache;
}

echo getData('PHP');
echo getData('Python');

// PHP PHP

В коде выше видно, что два раза выводится «PHP». Функция возвращает значение переменной, записанную при первом вызове.

Если бы не использовалось ключевое слово static, то пример выше вернул бы «PHP Python».

Комментарии

Авторизуйтесь, чтобы добавлять комментарии