(PECL yac >= 1.0.0)
Yac::get — 从缓存中取值
对于 string 类型的键,命中时返回缓存的值,否则返回 default(未指定默认值时返回 false)。
对于由键组成的 array,返回一个数组,其中包含所有命中的值,以各自的键为索引。自 yac 2.4.0 起,不在缓存中的键会被直接忽略(若指定了 default,则用默认值填充);在 2.4.0 之前,每个缺失的键都会插入一个 false 占位值。
示例 #1 Yac::get() 示例
<?php
$yac = new Yac();
$yac->set("foo", "bar");
var_dump($yac->get("foo")); // string(3) "bar"
var_dump($yac->get("missing")); // bool(false):未命中
?>示例 #2 区分存进去的 false 和未命中
<?php
$yac = new Yac();
// 没有默认值时,未命中和存了 false 无法区分;
// 哨兵默认值(自 yac 2.4.0 起可用)可以区分二者
$yac->set("flag", false);
var_dump($yac->get("flag")); // bool(false):存的就是这个值
var_dump($yac->get("missing", false)); // bool(false):未命中,形态相同
var_dump($yac->get("flag", "__NONE__")); // bool(false):存的就是这个值
var_dump($yac->get("missing", "__NONE__")); // string(8) "__NONE__":未命中
?>示例 #3 一次获取多个键
<?php
$yac = new Yac();
$yac->set("foo", "bar");
$yac->set("foo2", "bar2");
// 传入键数组时,结果中只包含命中的键
var_dump($yac->get(array("foo", "foo2", "missing")));
// array(2) { ["foo"]=> string(3) "bar" ["foo2"]=> string(4) "bar2" }
?>