Files
yii2/framework/caching/CallbackDependency.php
2024-05-30 20:23:31 +03:00

39 lines
1.1 KiB
PHP

<?php
/**
* @link https://www.yiiframework.com/
* @copyright Copyright (c) 2008 Yii Software LLC
* @license https://www.yiiframework.com/license/
*/
namespace yii\caching;
/**
* CallbackDependency represents a dependency based on the result of a callback function.
*
* Callback function should return a value that serves as the dependency data.
*
* For more details and usage information on Cache, see the [guide article on caching](guide:caching-overview).
*
* @author Vlad Varlamov <vlad@varlamov.dev>
* @since 2.0.50
*/
class CallbackDependency extends Dependency
{
/**
* @var callable the PHP callback that will be called to determine if the dependency has been changed.
*/
public $callback;
/**
* Generates the data needed to determine if dependency has been changed.
* This method returns the result of the callback function.
* @param CacheInterface $cache the cache component that is currently evaluating this dependency
* @return mixed the data needed to determine if dependency has been changed.
*/
protected function generateDependencyData($cache)
{
return ($this->callback)();
}
}