0

有没有办法在检索整个保存的数据之前检查瞬态是否存在?

根据此页面http://codex.wordpress.org/Transients_API,检查保存的瞬态值是否成功检索,使用以下代码:

if ( false === ( $value = get_transient( 'value' ) ) ) {
     // this code runs when there is no valid transient set
}

但这是假设检索到的数据将在可用时使用。当数百个网页被 Transient API 缓存并且只需要检查缓存是否仍然存在时,检索所有数据是不切实际的。我不确定它如何影响速度和内存,但一般来说,尺寸越大,它会变得越慢并消耗更多的内存。

所以我想知道是否有一种简单的方法可以只检查它是否已保存或不喜欢该empty()功能。

感谢你的信息。

4

2 回答 2

8

这仅检索到期时间。

$your_transient = 'your_transient';
$data_timeout = get_option('_transient_timeout_' . $your_transient);
if ($data_timeout < time())
    echo 'it is expired.';
else
    echo 'there is a transient';
于 2012-09-23T16:56:29.890 回答
2

if(!get_transient('value')) 应该完成这项工作,它检查瞬态是否存在或已过期。

于 2012-09-15T07:31:32.463 回答