Edit File by line
/home/zeestwma/richards.../wp-conte.../plugins/litespee.../src
File: object.lib.php
return isset($this->$name);
[500] Fix | Delete
}
[501] Fix | Delete
[502] Fix | Delete
/**
[503] Fix | Delete
* Makes private properties un-settable for backward compatibility.
[504] Fix | Delete
*
[505] Fix | Delete
* @since 5.4
[506] Fix | Delete
* @access public
[507] Fix | Delete
*
[508] Fix | Delete
* @param string $name Property to unset.
[509] Fix | Delete
*/
[510] Fix | Delete
public function __unset($name)
[511] Fix | Delete
{
[512] Fix | Delete
unset($this->$name);
[513] Fix | Delete
}
[514] Fix | Delete
[515] Fix | Delete
/**
[516] Fix | Delete
* Serves as a utility function to determine whether a key is valid.
[517] Fix | Delete
*
[518] Fix | Delete
* @since 5.4
[519] Fix | Delete
* @access protected
[520] Fix | Delete
*
[521] Fix | Delete
* @param int|string $key Cache key to check for validity.
[522] Fix | Delete
* @return bool Whether the key is valid.
[523] Fix | Delete
*/
[524] Fix | Delete
protected function is_valid_key($key)
[525] Fix | Delete
{
[526] Fix | Delete
if (is_int($key)) {
[527] Fix | Delete
return true;
[528] Fix | Delete
}
[529] Fix | Delete
[530] Fix | Delete
if (is_string($key) && trim($key) !== '') {
[531] Fix | Delete
return true;
[532] Fix | Delete
}
[533] Fix | Delete
[534] Fix | Delete
$type = gettype($key);
[535] Fix | Delete
[536] Fix | Delete
if (!function_exists('__')) {
[537] Fix | Delete
wp_load_translations_early();
[538] Fix | Delete
}
[539] Fix | Delete
[540] Fix | Delete
$message = is_string($key)
[541] Fix | Delete
? __('Cache key must not be an empty string.')
[542] Fix | Delete
: /* translators: %s: The type of the given cache key. */
[543] Fix | Delete
sprintf(__('Cache key must be integer or non-empty string, %s given.'), $type);
[544] Fix | Delete
[545] Fix | Delete
_doing_it_wrong(sprintf('%s::%s', __CLASS__, debug_backtrace(DEBUG_BACKTRACE_IGNORE_ARGS, 2)[1]['function']), $message, '6.1.0');
[546] Fix | Delete
[547] Fix | Delete
return false;
[548] Fix | Delete
}
[549] Fix | Delete
[550] Fix | Delete
/**
[551] Fix | Delete
* Get the final key.
[552] Fix | Delete
*
[553] Fix | Delete
* @since 1.8
[554] Fix | Delete
* @access private
[555] Fix | Delete
*/
[556] Fix | Delete
private function _key($key, $group = 'default')
[557] Fix | Delete
{
[558] Fix | Delete
if (empty($group)) {
[559] Fix | Delete
$group = 'default';
[560] Fix | Delete
}
[561] Fix | Delete
[562] Fix | Delete
$prefix = $this->_object_cache->is_global($group) ? '' : $this->blog_prefix;
[563] Fix | Delete
[564] Fix | Delete
return LSOC_PREFIX . $prefix . $group . '.' . $key;
[565] Fix | Delete
}
[566] Fix | Delete
[567] Fix | Delete
/**
[568] Fix | Delete
* Output debug info.
[569] Fix | Delete
*
[570] Fix | Delete
* @since 1.8
[571] Fix | Delete
* @access public
[572] Fix | Delete
*/
[573] Fix | Delete
public function debug()
[574] Fix | Delete
{
[575] Fix | Delete
return ' [total] ' .
[576] Fix | Delete
$this->cache_total .
[577] Fix | Delete
' [hit_incall] ' .
[578] Fix | Delete
$this->count_hit_incall .
[579] Fix | Delete
' [hit] ' .
[580] Fix | Delete
$this->count_hit .
[581] Fix | Delete
' [miss_incall] ' .
[582] Fix | Delete
$this->count_miss_incall .
[583] Fix | Delete
' [miss] ' .
[584] Fix | Delete
$this->count_miss .
[585] Fix | Delete
' [set] ' .
[586] Fix | Delete
$this->count_set;
[587] Fix | Delete
}
[588] Fix | Delete
[589] Fix | Delete
/**
[590] Fix | Delete
* Adds data to the cache if it doesn't already exist.
[591] Fix | Delete
*
[592] Fix | Delete
* @since 1.8
[593] Fix | Delete
* @access public
[594] Fix | Delete
*
[595] Fix | Delete
* @uses WP_Object_Cache::_exists() Checks to see if the cache already has data.
[596] Fix | Delete
* @uses WP_Object_Cache::set() Sets the data after the checking the cache
[597] Fix | Delete
* contents existence.
[598] Fix | Delete
*
[599] Fix | Delete
* @param int|string $key What to call the contents in the cache.
[600] Fix | Delete
* @param mixed $data The contents to store in the cache.
[601] Fix | Delete
* @param string $group Optional. Where to group the cache contents. Default 'default'.
[602] Fix | Delete
* @param int $expire Optional. When to expire the cache contents, in seconds.
[603] Fix | Delete
* Default 0 (no expiration).
[604] Fix | Delete
* @return bool True on success, false if cache key and group already exist.
[605] Fix | Delete
*/
[606] Fix | Delete
public function add($key, $data, $group = 'default', $expire = 0)
[607] Fix | Delete
{
[608] Fix | Delete
if (wp_suspend_cache_addition()) {
[609] Fix | Delete
return false;
[610] Fix | Delete
}
[611] Fix | Delete
[612] Fix | Delete
if (!$this->is_valid_key($key)) {
[613] Fix | Delete
return false;
[614] Fix | Delete
}
[615] Fix | Delete
[616] Fix | Delete
if (empty($group)) {
[617] Fix | Delete
$group = 'default';
[618] Fix | Delete
}
[619] Fix | Delete
[620] Fix | Delete
$id = $this->_key($key, $group);
[621] Fix | Delete
[622] Fix | Delete
if (array_key_exists($id, $this->_cache)) {
[623] Fix | Delete
return false;
[624] Fix | Delete
}
[625] Fix | Delete
[626] Fix | Delete
return $this->set($key, $data, $group, (int) $expire);
[627] Fix | Delete
}
[628] Fix | Delete
[629] Fix | Delete
/**
[630] Fix | Delete
* Adds multiple values to the cache in one call.
[631] Fix | Delete
*
[632] Fix | Delete
* @since 5.4
[633] Fix | Delete
* @access public
[634] Fix | Delete
*
[635] Fix | Delete
* @param array $data Array of keys and values to be added.
[636] Fix | Delete
* @param string $group Optional. Where the cache contents are grouped. Default empty.
[637] Fix | Delete
* @param int $expire Optional. When to expire the cache contents, in seconds.
[638] Fix | Delete
* Default 0 (no expiration).
[639] Fix | Delete
* @return bool[] Array of return values, grouped by key. Each value is either
[640] Fix | Delete
* true on success, or false if cache key and group already exist.
[641] Fix | Delete
*/
[642] Fix | Delete
public function add_multiple(array $data, $group = '', $expire = 0)
[643] Fix | Delete
{
[644] Fix | Delete
$values = array();
[645] Fix | Delete
[646] Fix | Delete
foreach ($data as $key => $value) {
[647] Fix | Delete
$values[$key] = $this->add($key, $value, $group, $expire);
[648] Fix | Delete
}
[649] Fix | Delete
[650] Fix | Delete
return $values;
[651] Fix | Delete
}
[652] Fix | Delete
[653] Fix | Delete
/**
[654] Fix | Delete
* Replaces the contents in the cache, if contents already exist.
[655] Fix | Delete
*
[656] Fix | Delete
* @since 1.8
[657] Fix | Delete
* @access public
[658] Fix | Delete
*
[659] Fix | Delete
* @see WP_Object_Cache::set()
[660] Fix | Delete
*
[661] Fix | Delete
* @param int|string $key What to call the contents in the cache.
[662] Fix | Delete
* @param mixed $data The contents to store in the cache.
[663] Fix | Delete
* @param string $group Optional. Where to group the cache contents. Default 'default'.
[664] Fix | Delete
* @param int $expire Optional. When to expire the cache contents, in seconds.
[665] Fix | Delete
* Default 0 (no expiration).
[666] Fix | Delete
* @return bool True if contents were replaced, false if original value does not exist.
[667] Fix | Delete
*/
[668] Fix | Delete
public function replace($key, $data, $group = 'default', $expire = 0)
[669] Fix | Delete
{
[670] Fix | Delete
if (!$this->is_valid_key($key)) {
[671] Fix | Delete
return false;
[672] Fix | Delete
}
[673] Fix | Delete
[674] Fix | Delete
if (empty($group)) {
[675] Fix | Delete
$group = 'default';
[676] Fix | Delete
}
[677] Fix | Delete
[678] Fix | Delete
$id = $this->_key($key, $group);
[679] Fix | Delete
[680] Fix | Delete
if (!array_key_exists($id, $this->_cache)) {
[681] Fix | Delete
return false;
[682] Fix | Delete
}
[683] Fix | Delete
[684] Fix | Delete
return $this->set($key, $data, $group, (int) $expire);
[685] Fix | Delete
}
[686] Fix | Delete
[687] Fix | Delete
/**
[688] Fix | Delete
* Sets the data contents into the cache.
[689] Fix | Delete
*
[690] Fix | Delete
* The cache contents are grouped by the $group parameter followed by the
[691] Fix | Delete
* $key. This allows for duplicate IDs in unique groups. Therefore, naming of
[692] Fix | Delete
* the group should be used with care and should follow normal function
[693] Fix | Delete
* naming guidelines outside of core WordPress usage.
[694] Fix | Delete
*
[695] Fix | Delete
* The $expire parameter is not used, because the cache will automatically
[696] Fix | Delete
* expire for each time a page is accessed and PHP finishes. The method is
[697] Fix | Delete
* more for cache plugins which use files.
[698] Fix | Delete
*
[699] Fix | Delete
* @since 1.8
[700] Fix | Delete
* @since 5.4 Returns false if cache key is invalid.
[701] Fix | Delete
* @access public
[702] Fix | Delete
*
[703] Fix | Delete
* @param int|string $key What to call the contents in the cache.
[704] Fix | Delete
* @param mixed $data The contents to store in the cache.
[705] Fix | Delete
* @param string $group Optional. Where to group the cache contents. Default 'default'.
[706] Fix | Delete
* @param int $expire Optional. When to expire the cache contents, in seconds.
[707] Fix | Delete
* Default 0 (no expiration).
[708] Fix | Delete
* @return bool True if contents were set, false if key is invalid.
[709] Fix | Delete
*/
[710] Fix | Delete
public function set($key, $data, $group = 'default', $expire = 0)
[711] Fix | Delete
{
[712] Fix | Delete
if (!$this->is_valid_key($key)) {
[713] Fix | Delete
return false;
[714] Fix | Delete
}
[715] Fix | Delete
[716] Fix | Delete
if (empty($group)) {
[717] Fix | Delete
$group = 'default';
[718] Fix | Delete
}
[719] Fix | Delete
[720] Fix | Delete
$id = $this->_key($key, $group);
[721] Fix | Delete
[722] Fix | Delete
if (is_object($data)) {
[723] Fix | Delete
$data = clone $data;
[724] Fix | Delete
}
[725] Fix | Delete
// error_log("oc: set \t\t\t[key] " . $id );
[726] Fix | Delete
$this->_cache[$id] = $data;
[727] Fix | Delete
[728] Fix | Delete
if (array_key_exists($id, $this->_cache_404)) {
[729] Fix | Delete
// error_log("oc: unset404\t\t\t[key] " . $id );
[730] Fix | Delete
unset($this->_cache_404[$id]);
[731] Fix | Delete
}
[732] Fix | Delete
[733] Fix | Delete
if (!$this->_object_cache->is_non_persistent($group)) {
[734] Fix | Delete
$this->_object_cache->set($id, serialize(array('data' => $data)), (int) $expire);
[735] Fix | Delete
$this->count_set++;
[736] Fix | Delete
}
[737] Fix | Delete
[738] Fix | Delete
if ($this->_object_cache->store_transients($group)) {
[739] Fix | Delete
$this->_transient_set($key, $data, $group, (int) $expire);
[740] Fix | Delete
}
[741] Fix | Delete
[742] Fix | Delete
return true;
[743] Fix | Delete
}
[744] Fix | Delete
[745] Fix | Delete
/**
[746] Fix | Delete
* Sets multiple values to the cache in one call.
[747] Fix | Delete
*
[748] Fix | Delete
* @since 5.4
[749] Fix | Delete
* @access public
[750] Fix | Delete
*
[751] Fix | Delete
* @param array $data Array of key and value to be set.
[752] Fix | Delete
* @param string $group Optional. Where the cache contents are grouped. Default empty.
[753] Fix | Delete
* @param int $expire Optional. When to expire the cache contents, in seconds.
[754] Fix | Delete
* Default 0 (no expiration).
[755] Fix | Delete
* @return bool[] Array of return values, grouped by key. Each value is always true.
[756] Fix | Delete
*/
[757] Fix | Delete
public function set_multiple(array $data, $group = '', $expire = 0)
[758] Fix | Delete
{
[759] Fix | Delete
$values = array();
[760] Fix | Delete
[761] Fix | Delete
foreach ($data as $key => $value) {
[762] Fix | Delete
$values[$key] = $this->set($key, $value, $group, $expire);
[763] Fix | Delete
}
[764] Fix | Delete
[765] Fix | Delete
return $values;
[766] Fix | Delete
}
[767] Fix | Delete
[768] Fix | Delete
/**
[769] Fix | Delete
* Retrieves the cache contents, if it exists.
[770] Fix | Delete
*
[771] Fix | Delete
* The contents will be first attempted to be retrieved by searching by the
[772] Fix | Delete
* key in the cache group. If the cache is hit (success) then the contents
[773] Fix | Delete
* are returned.
[774] Fix | Delete
*
[775] Fix | Delete
* On failure, the number of cache misses will be incremented.
[776] Fix | Delete
*
[777] Fix | Delete
* @since 1.8
[778] Fix | Delete
* @access public
[779] Fix | Delete
*
[780] Fix | Delete
* @param int|string $key The key under which the cache contents are stored.
[781] Fix | Delete
* @param string $group Optional. Where the cache contents are grouped. Default 'default'.
[782] Fix | Delete
* @param bool $force Optional. Unused. Whether to force an update of the local cache
[783] Fix | Delete
* from the persistent cache. Default false.
[784] Fix | Delete
* @param bool $found Optional. Whether the key was found in the cache (passed by reference).
[785] Fix | Delete
* Disambiguates a return of false, a storable value. Default null.
[786] Fix | Delete
* @return mixed|false The cache contents on success, false on failure to retrieve contents.
[787] Fix | Delete
*/
[788] Fix | Delete
public function get($key, $group = 'default', $force = false, &$found = null)
[789] Fix | Delete
{
[790] Fix | Delete
if (!$this->is_valid_key($key)) {
[791] Fix | Delete
return false;
[792] Fix | Delete
}
[793] Fix | Delete
[794] Fix | Delete
if (empty($group)) {
[795] Fix | Delete
$group = 'default';
[796] Fix | Delete
}
[797] Fix | Delete
[798] Fix | Delete
$id = $this->_key($key, $group);
[799] Fix | Delete
[800] Fix | Delete
// error_log('');
[801] Fix | Delete
// error_log("oc: get \t\t\t[key] " . $id . ( $force ? "\t\t\t [forced] " : '' ) );
[802] Fix | Delete
$found = false;
[803] Fix | Delete
$found_in_oc = false;
[804] Fix | Delete
$cache_val = false;
[805] Fix | Delete
if (array_key_exists($id, $this->_cache) && !$force) {
[806] Fix | Delete
$found = true;
[807] Fix | Delete
$cache_val = $this->_cache[$id];
[808] Fix | Delete
$this->count_hit_incall++;
[809] Fix | Delete
} elseif (!array_key_exists($id, $this->_cache_404) && !$this->_object_cache->is_non_persistent($group)) {
[810] Fix | Delete
$v = $this->_object_cache->get($id);
[811] Fix | Delete
[812] Fix | Delete
if ($v !== null) {
[813] Fix | Delete
$v = @maybe_unserialize($v);
[814] Fix | Delete
}
[815] Fix | Delete
[816] Fix | Delete
// To be compatible with false val
[817] Fix | Delete
if (is_array($v) && array_key_exists('data', $v)) {
[818] Fix | Delete
$this->count_hit++;
[819] Fix | Delete
$found = true;
[820] Fix | Delete
$found_in_oc = true;
[821] Fix | Delete
$cache_val = $v['data'];
[822] Fix | Delete
} else {
[823] Fix | Delete
// Can't find key, cache it to 404
[824] Fix | Delete
// error_log("oc: add404\t\t\t[key] " . $id );
[825] Fix | Delete
$this->_cache_404[$id] = 1;
[826] Fix | Delete
$this->count_miss++;
[827] Fix | Delete
}
[828] Fix | Delete
} else {
[829] Fix | Delete
$this->count_miss_incall++;
[830] Fix | Delete
}
[831] Fix | Delete
[832] Fix | Delete
if (is_object($cache_val)) {
[833] Fix | Delete
$cache_val = clone $cache_val;
[834] Fix | Delete
}
[835] Fix | Delete
[836] Fix | Delete
// If not found but has `Store Transients` cfg on, still need to follow WP's get_transient() logic
[837] Fix | Delete
if (!$found && $this->_object_cache->store_transients($group)) {
[838] Fix | Delete
$cache_val = $this->_transient_get($key, $group);
[839] Fix | Delete
if ($cache_val) {
[840] Fix | Delete
$found = true; // $found not used for now (v1.8.3)
[841] Fix | Delete
}
[842] Fix | Delete
}
[843] Fix | Delete
[844] Fix | Delete
if ($found_in_oc) {
[845] Fix | Delete
$this->_cache[$id] = $cache_val;
[846] Fix | Delete
}
[847] Fix | Delete
[848] Fix | Delete
$this->cache_total++;
[849] Fix | Delete
[850] Fix | Delete
return $cache_val;
[851] Fix | Delete
}
[852] Fix | Delete
[853] Fix | Delete
/**
[854] Fix | Delete
* Retrieves multiple values from the cache in one call.
[855] Fix | Delete
*
[856] Fix | Delete
* @since 5.4
[857] Fix | Delete
* @access public
[858] Fix | Delete
*
[859] Fix | Delete
* @param array $keys Array of keys under which the cache contents are stored.
[860] Fix | Delete
* @param string $group Optional. Where the cache contents are grouped. Default 'default'.
[861] Fix | Delete
* @param bool $force Optional. Whether to force an update of the local cache
[862] Fix | Delete
* from the persistent cache. Default false.
[863] Fix | Delete
* @return array Array of return values, grouped by key. Each value is either
[864] Fix | Delete
* the cache contents on success, or false on failure.
[865] Fix | Delete
*/
[866] Fix | Delete
public function get_multiple($keys, $group = 'default', $force = false)
[867] Fix | Delete
{
[868] Fix | Delete
$values = array();
[869] Fix | Delete
[870] Fix | Delete
foreach ($keys as $key) {
[871] Fix | Delete
$values[$key] = $this->get($key, $group, $force);
[872] Fix | Delete
}
[873] Fix | Delete
[874] Fix | Delete
return $values;
[875] Fix | Delete
}
[876] Fix | Delete
[877] Fix | Delete
/**
[878] Fix | Delete
* Removes the contents of the cache key in the group.
[879] Fix | Delete
*
[880] Fix | Delete
* If the cache key does not exist in the group, then nothing will happen.
[881] Fix | Delete
*
[882] Fix | Delete
* @since 1.8
[883] Fix | Delete
* @access public
[884] Fix | Delete
*
[885] Fix | Delete
* @param int|string $key What the contents in the cache are called.
[886] Fix | Delete
* @param string $group Optional. Where the cache contents are grouped. Default 'default'.
[887] Fix | Delete
* @param bool $deprecated Optional. Unused. Default false.
[888] Fix | Delete
* @return bool True on success, false if the contents were not deleted.
[889] Fix | Delete
*/
[890] Fix | Delete
public function delete($key, $group = 'default', $deprecated = false)
[891] Fix | Delete
{
[892] Fix | Delete
if (!$this->is_valid_key($key)) {
[893] Fix | Delete
return false;
[894] Fix | Delete
}
[895] Fix | Delete
[896] Fix | Delete
if (empty($group)) {
[897] Fix | Delete
$group = 'default';
[898] Fix | Delete
}
[899] Fix | Delete
[900] Fix | Delete
$id = $this->_key($key, $group);
[901] Fix | Delete
[902] Fix | Delete
if ($this->_object_cache->store_transients($group)) {
[903] Fix | Delete
$this->_transient_del($key, $group);
[904] Fix | Delete
}
[905] Fix | Delete
[906] Fix | Delete
if (array_key_exists($id, $this->_cache)) {
[907] Fix | Delete
unset($this->_cache[$id]);
[908] Fix | Delete
}
[909] Fix | Delete
// error_log("oc: delete \t\t\t[key] " . $id );
[910] Fix | Delete
[911] Fix | Delete
if ($this->_object_cache->is_non_persistent($group)) {
[912] Fix | Delete
return false;
[913] Fix | Delete
}
[914] Fix | Delete
[915] Fix | Delete
return $this->_object_cache->delete($id);
[916] Fix | Delete
}
[917] Fix | Delete
[918] Fix | Delete
/**
[919] Fix | Delete
* Deletes multiple values from the cache in one call.
[920] Fix | Delete
*
[921] Fix | Delete
* @since 5.4
[922] Fix | Delete
* @access public
[923] Fix | Delete
*
[924] Fix | Delete
* @param array $keys Array of keys to be deleted.
[925] Fix | Delete
* @param string $group Optional. Where the cache contents are grouped. Default empty.
[926] Fix | Delete
* @return bool[] Array of return values, grouped by key. Each value is either
[927] Fix | Delete
* true on success, or false if the contents were not deleted.
[928] Fix | Delete
*/
[929] Fix | Delete
public function delete_multiple(array $keys, $group = '')
[930] Fix | Delete
{
[931] Fix | Delete
$values = array();
[932] Fix | Delete
[933] Fix | Delete
foreach ($keys as $key) {
[934] Fix | Delete
$values[$key] = $this->delete($key, $group);
[935] Fix | Delete
}
[936] Fix | Delete
[937] Fix | Delete
return $values;
[938] Fix | Delete
}
[939] Fix | Delete
[940] Fix | Delete
/**
[941] Fix | Delete
* Increments numeric cache item's value.
[942] Fix | Delete
*
[943] Fix | Delete
* @since 5.4
[944] Fix | Delete
*
[945] Fix | Delete
* @param int|string $key The cache key to increment.
[946] Fix | Delete
* @param int $offset Optional. The amount by which to increment the item's value.
[947] Fix | Delete
* Default 1.
[948] Fix | Delete
* @param string $group Optional. The group the key is in. Default 'default'.
[949] Fix | Delete
* @return int|false The item's new value on success, false on failure.
[950] Fix | Delete
*/
[951] Fix | Delete
public function incr($key, $offset = 1, $group = 'default')
[952] Fix | Delete
{
[953] Fix | Delete
return $this->incr_desr($key, $offset, $group, true);
[954] Fix | Delete
}
[955] Fix | Delete
[956] Fix | Delete
/**
[957] Fix | Delete
* Decrements numeric cache item's value.
[958] Fix | Delete
*
[959] Fix | Delete
* @since 5.4
[960] Fix | Delete
*
[961] Fix | Delete
* @param int|string $key The cache key to decrement.
[962] Fix | Delete
* @param int $offset Optional. The amount by which to decrement the item's value.
[963] Fix | Delete
* Default 1.
[964] Fix | Delete
* @param string $group Optional. The group the key is in. Default 'default'.
[965] Fix | Delete
* @return int|false The item's new value on success, false on failure.
[966] Fix | Delete
*/
[967] Fix | Delete
public function decr($key, $offset = 1, $group = 'default')
[968] Fix | Delete
{
[969] Fix | Delete
return $this->incr_desr($key, $offset, $group, false);
[970] Fix | Delete
}
[971] Fix | Delete
[972] Fix | Delete
/**
[973] Fix | Delete
* Increments or decrements numeric cache item's value.
[974] Fix | Delete
*
[975] Fix | Delete
* @since 1.8
[976] Fix | Delete
* @access public
[977] Fix | Delete
*/
[978] Fix | Delete
public function incr_desr($key, $offset = 1, $group = 'default', $incr = true)
[979] Fix | Delete
{
[980] Fix | Delete
if (!$this->is_valid_key($key)) {
[981] Fix | Delete
return false;
[982] Fix | Delete
}
[983] Fix | Delete
[984] Fix | Delete
if (empty($group)) {
[985] Fix | Delete
$group = 'default';
[986] Fix | Delete
}
[987] Fix | Delete
[988] Fix | Delete
$cache_val = $this->get($key, $group);
[989] Fix | Delete
[990] Fix | Delete
if (false === $cache_val) {
[991] Fix | Delete
return false;
[992] Fix | Delete
}
[993] Fix | Delete
[994] Fix | Delete
if (!is_numeric($cache_val)) {
[995] Fix | Delete
$cache_val = 0;
[996] Fix | Delete
}
[997] Fix | Delete
[998] Fix | Delete
$offset = (int) $offset;
[999] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function