0 フォロワー

クラス yii\caching\ApcCache

継承yii\caching\ApcCache » yii\caching\Cache » yii\base\Component » yii\base\BaseObject
実装yii\base\Configurable, yii\caching\CacheInterface
利用可能バージョン2.0
ソースコード https://github.com/yiisoft/yii2/blob/master/framework/caching/ApcCache.php

ApcCacheは、アプリケーションコンポーネントとしてAPCキャッシングを提供します。

このアプリケーションコンポーネントを使用するには、APC PHPエクステンションをロードする必要があります。または、useApcutrueに設定することで、APCu PHPエクステンションを使用することもできます。CLIでAPCまたはAPCuを有効にするには、php.iniに"apc.enable_cli = 1"を追加する必要があります。

ApcCacheがサポートする一般的なキャッシュ操作については、yii\caching\Cacheを参照してください。

Cacheの詳細と使用方法については、キャッシングに関するガイド記事を参照してください。

公開プロパティ

継承されたプロパティを隠す

プロパティ 説明 定義元
$behaviors yii\base\Behavior[] このコンポーネントにアタッチされたビヘイビアのリスト。 yii\base\Component
$defaultDuration integer キャッシュエントリの有効期限までの秒数。 yii\caching\Cache
$keyPrefix string すべてのキャッシュキーの前に追加される文字列。これにより、キャッシュストレージ全体でグローバルに一意になります。 yii\caching\Cache
$serializer array|null|false キャッシュされたデータをシリアル化および逆シリアル化するために使用する関数。 yii\caching\Cache
$useApcu boolean 基盤となるキャッシングエクステンションとしてapcuまたはapcを使用するかどうか。 yii\caching\ApcCache

公開メソッド

継承されたメソッドを隠す

メソッド 説明 定義元
__call() クラスメソッドではない名前付きメソッドを呼び出します。 yii\base\Component
__clone() 既存のオブジェクトを複製してオブジェクトが作成された後に呼び出されるメソッドです。 yii\base\Component
__construct() コンストラクタ。 yii\base\BaseObject
__get() コンポーネントプロパティの値を返します。 yii\base\Component
__isset() プロパティが設定されているか(つまり、定義されていてnullではないか)を確認します。 yii\base\Component
__set() コンポーネントプロパティの値を設定します。 yii\base\Component
__unset() コンポーネントプロパティをnullに設定します。 yii\base\Component
add() キャッシュにキーで識別される値を格納します(キャッシュにこのキーが含まれていない場合)。 yii\caching\Cache
attachBehavior() このコンポーネントにビヘイビアをアタッチします。 yii\base\Component
attachBehaviors() コンポーネントにビヘイビアのリストをアタッチします。 yii\base\Component
behaviors() このコンポーネントが持つべきビヘイビアのリストを返します。 yii\base\Component
buildKey() 指定されたキーから正規化されたキャッシュキーを構築します。 yii\caching\Cache
canGetProperty() プロパティを読み取ることができるかどうかを示す値を返します。 yii\base\Component
canSetProperty() プロパティを設定できるかどうかを示す値を返します。 yii\base\Component
className() このクラスの完全修飾名を返します。 yii\base\BaseObject
delete() 指定されたキーの値をキャッシュから削除します。 yii\caching\Cache
detachBehavior() コンポーネントからビヘイビアをデタッチします。 yii\base\Component
detachBehaviors() コンポーネントからすべてのビヘイビアをデタッチします。 yii\base\Component
ensureBehaviors() behaviors()で宣言されたビヘイビアがこのコンポーネントにアタッチされていることを確認します。 yii\base\Component
exists() 指定されたキーがキャッシュに存在するかどうかを確認します。 yii\caching\ApcCache
flush() キャッシュからすべての値を削除します。 yii\caching\Cache
get() 指定されたキーでキャッシュから値を取得します。 yii\caching\Cache
getBehavior() 名前付きビヘイビアオブジェクトを返します。 yii\base\Component
getBehaviors() このコンポーネントにアタッチされたすべてのビヘイビアを返します。 yii\base\Component
getOrSet() メソッドは、set()メソッドとget()メソッドの両方を組み合わせて、$keyで識別される値を取得するか、$keyに利用可能なキャッシュがない場合に$callableの実行結果を格納します。 yii\caching\Cache
hasEventHandlers() 名前付きイベントにハンドラがアタッチされているかどうかを示す値を返します。 yii\base\Component
hasMethod() メソッドが定義されているかどうかを示す値を返します。 yii\base\Component
hasProperty() このコンポーネントのプロパティが定義されているかどうかを示す値を返します。 yii\base\Component
init() このアプリケーションコンポーネントを初期化します。 yii\caching\ApcCache
madd() 複数のアイテムをキャッシュに格納します。各アイテムには、キーで識別される値が含まれています。 yii\caching\Cache
mget() 指定されたキーでキャッシュから複数の値を取得します。 yii\caching\Cache
mset() 複数のアイテムをキャッシュに格納します。各アイテムには、キーで識別される値が含まれています。 yii\caching\Cache
multiAdd() 複数のアイテムをキャッシュに格納します。各アイテムには、キーで識別される値が含まれています。 yii\caching\Cache
multiGet() 指定されたキーでキャッシュから複数の値を取得します。 yii\caching\Cache
multiSet() 複数のアイテムをキャッシュに格納します。各アイテムには、キーで識別される値が含まれています。 yii\caching\Cache
off() このコンポーネントから既存のイベントハンドラをデタッチします。 yii\base\Component
offsetExists() 指定されたキーを持つキャッシュエントリがあるかどうかを返します。 yii\caching\Cache
offsetGet() 指定されたキーでキャッシュから値を取得します。 yii\caching\Cache
offsetSet() キーで識別される値をキャッシュに格納します。 yii\caching\Cache
offsetUnset() 指定されたキーの値をキャッシュから削除します。このメソッドは、インターフェースArrayAccessで必要です。 yii\caching\Cache
on() イベントにイベントハンドラをアタッチします。 yii\base\Component
set() キーで識別される値をキャッシュに格納します。 yii\caching\Cache
trigger() イベントをトリガーします。 yii\base\Component

保護されたメソッド

継承されたメソッドを隠す

メソッド 説明 定義元
addValue() キャッシュにキーで識別される値を格納します(キャッシュにこのキーが含まれていない場合)。 yii\caching\ApcCache
addValues() 複数のキーと値のペアをキャッシュに追加します。 yii\caching\ApcCache
deleteValue() 指定されたキーの値をキャッシュから削除します。これは、親クラスで宣言されたメソッドの実装です。 yii\caching\ApcCache
flushValues() キャッシュからすべての値を削除します。 yii\caching\ApcCache
getValue() 指定されたキーでキャッシュから値を取得します。 yii\caching\ApcCache
getValues() 指定されたキーでキャッシュから複数の値を取得します。 yii\caching\ApcCache
setValue() キーで識別される値をキャッシュに格納します。 yii\caching\ApcCache
setValues() 複数のキーと値のペアをキャッシュに格納します。 yii\caching\ApcCache

プロパティの詳細

継承されたプロパティを隠す

$useApcu public property (バージョン2.0.7以降で使用可能)

基盤となるキャッシングエクステンションとしてapcuまたはapcを使用するかどうか。trueの場合、apcuが使用されます。falseの場合、apcが使用されます。デフォルトはfalseです。

public boolean $useApcu false

メソッドの詳細

継承されたメソッドを隠す

__call() public method

定義元: yii\base\Component::__call()

クラスメソッドではない名前付きメソッドを呼び出します。

このメソッドは、アタッチされたビヘイビアに名前付きメソッドがあるかどうかを確認し、利用可能な場合はそれを実行します。

このメソッドはPHPのマジックメソッドであり、未知のメソッドが呼び出された際に暗黙的に呼び出されるため、直接呼び出さないでください。

public mixed __call ( $name, $params )
$name string

メソッド名

$params array

メソッドパラメータ

戻り値 mixed

メソッドの戻り値

例外 yii\base\UnknownMethodException

未知のメソッド呼び出し時

                public function __call($name, $params)
{
    $this->ensureBehaviors();
    foreach ($this->_behaviors as $object) {
        if ($object->hasMethod($name)) {
            return call_user_func_array([$object, $name], $params);
        }
    }
    throw new UnknownMethodException('Calling unknown method: ' . get_class($this) . "::$name()");
}

            
__clone() publicメソッド

定義位置: yii\base\Component::__clone()

既存のオブジェクトを複製してオブジェクトが作成された後に呼び出されるメソッドです。

古いオブジェクトにアタッチされているため、すべてのビヘイビアを削除します。

public void __clone ( )

                public function __clone()
{
    $this->_events = [];
    $this->_eventWildcards = [];
    $this->_behaviors = null;
}

            
__construct() publicメソッド

定義位置: yii\base\BaseObject::__construct()

コンストラクタ。

デフォルトの実装では、次の2つのことを行います。

  • 指定された設定$configを使用してオブジェクトを初期化します。
  • init()を呼び出します。

このメソッドを子クラスでオーバーライドする場合は、

  • コンストラクタの最後のパラメータが、ここにある$configのような設定配列であることをお勧めします。
  • コンストラクタの最後に親の実装を呼び出してください。
public void __construct ( $config = [] )
$config array

オブジェクトのプロパティを初期化するために使用される名前と値のペア

                public function __construct($config = [])
{
    if (!empty($config)) {
        Yii::configure($this, $config);
    }
    $this->init();
}

            
__get() publicメソッド

定義位置: yii\base\Component::__get()

コンポーネントプロパティの値を返します。

このメソッドは、次の順序で確認し、それに応じて動作します。

  • ゲッターで定義されたプロパティ: ゲッターの結果を返します。
  • ビヘイビアのプロパティ: ビヘイビアのプロパティの値を返します。

このメソッドはPHPのマジックメソッドであり、`$value = $component->property;`を実行した際に暗黙的に呼び出されるため、直接呼び出さないでください。

__set()も参照してください。

public mixed __get ( $name )
$name string

プロパティ名

戻り値 mixed

プロパティの値、またはビヘイビアのプロパティの値

例外 yii\base\UnknownPropertyException

プロパティが定義されていない場合

例外 yii\base\InvalidCallException

プロパティが書き込み専用の場合。

                public function __get($name)
{
    $getter = 'get' . $name;
    if (method_exists($this, $getter)) {
        // read property, e.g. getName()
        return $this->$getter();
    }
    // behavior property
    $this->ensureBehaviors();
    foreach ($this->_behaviors as $behavior) {
        if ($behavior->canGetProperty($name)) {
            return $behavior->$name;
        }
    }
    if (method_exists($this, 'set' . $name)) {
        throw new InvalidCallException('Getting write-only property: ' . get_class($this) . '::' . $name);
    }
    throw new UnknownPropertyException('Getting unknown property: ' . get_class($this) . '::' . $name);
}

            
__isset() publicメソッド

定義位置: yii\base\Component::__isset()

プロパティが設定されているか(つまり、定義されていてnullではないか)を確認します。

このメソッドは、次の順序で確認し、それに応じて動作します。

  • セッターで定義されたプロパティ: プロパティが設定されているかどうかを返します。
  • ビヘイビアのプロパティ: プロパティが設定されているかどうかを返します。
  • 存在しないプロパティの場合は`false`を返します。

このメソッドはPHPのマジックメソッドであり、`isset($component->property)`を実行した際に暗黙的に呼び出されるため、直接呼び出さないでください。

https://www.php.net/manual/en/function.isset.phpも参照してください。

public boolean __isset ( $name )
$name string

プロパティ名またはイベント名

戻り値 boolean

指定されたプロパティが設定されているかどうか

                public function __isset($name)
{
    $getter = 'get' . $name;
    if (method_exists($this, $getter)) {
        return $this->$getter() !== null;
    }
    // behavior property
    $this->ensureBehaviors();
    foreach ($this->_behaviors as $behavior) {
        if ($behavior->canGetProperty($name)) {
            return $behavior->$name !== null;
        }
    }
    return false;
}

            
__set() publicメソッド

定義位置: yii\base\Component::__set()

コンポーネントプロパティの値を設定します。

このメソッドは、次の順序で確認し、それに応じて動作します。

  • セッターで定義されたプロパティ: プロパティの値を設定します。
  • "on xyz"形式のイベント: "xyz"イベントにハンドラーをアタッチします。
  • "as xyz"形式のビヘイビア: "xyz"という名前のビヘイビアをアタッチします。
  • ビヘイビアのプロパティ: ビヘイビアのプロパティの値を設定します。

このメソッドはPHPのマジックメソッドであり、`$component->property = $value;`を実行した際に暗黙的に呼び出されるため、直接呼び出さないでください。

__get()も参照してください。

public void __set ( $name, $value )
$name string

プロパティ名またはイベント名

$value mixed

プロパティの値

例外 yii\base\UnknownPropertyException

プロパティが定義されていない場合

例外 yii\base\InvalidCallException

プロパティが読み取り専用の場合。

                public function __set($name, $value)
{
    $setter = 'set' . $name;
    if (method_exists($this, $setter)) {
        // set property
        $this->$setter($value);
        return;
    } elseif (strncmp($name, 'on ', 3) === 0) {
        // on event: attach event handler
        $this->on(trim(substr($name, 3)), $value);
        return;
    } elseif (strncmp($name, 'as ', 3) === 0) {
        // as behavior: attach behavior
        $name = trim(substr($name, 3));
        $this->attachBehavior($name, $value instanceof Behavior ? $value : Yii::createObject($value));
        return;
    }
    // behavior property
    $this->ensureBehaviors();
    foreach ($this->_behaviors as $behavior) {
        if ($behavior->canSetProperty($name)) {
            $behavior->$name = $value;
            return;
        }
    }
    if (method_exists($this, 'get' . $name)) {
        throw new InvalidCallException('Setting read-only property: ' . get_class($this) . '::' . $name);
    }
    throw new UnknownPropertyException('Setting unknown property: ' . get_class($this) . '::' . $name);
}

            
__unset() publicメソッド

定義位置: yii\base\Component::__unset()

コンポーネントプロパティをnullに設定します。

このメソッドは、次の順序で確認し、それに応じて動作します。

  • セッターで定義されたプロパティ: プロパティの値をnullに設定します。
  • ビヘイビアのプロパティ: プロパティの値をnullに設定します。

このメソッドはPHPのマジックメソッドであり、`unset($component->property)`を実行した際に暗黙的に呼び出されるため、直接呼び出さないでください。

https://www.php.net/manual/en/function.unset.phpも参照してください。

public void __unset ( $name )
$name string

プロパティ名

例外 yii\base\InvalidCallException

プロパティが読み取り専用の場合。

                public function __unset($name)
{
    $setter = 'set' . $name;
    if (method_exists($this, $setter)) {
        $this->$setter(null);
        return;
    }
    // behavior property
    $this->ensureBehaviors();
    foreach ($this->_behaviors as $behavior) {
        if ($behavior->canSetProperty($name)) {
            $behavior->$name = null;
            return;
        }
    }
    throw new InvalidCallException('Unsetting an unknown or read-only property: ' . get_class($this) . '::' . $name);
}

            
add() publicメソッド

定義位置: yii\caching\Cache::add()

キャッシュにキーで識別される値を格納します(キャッシュにこのキーが含まれていない場合)。

キャッシュに既にキーが含まれている場合は、何も実行されません。

public boolean add ( $key, $value, $duration 0, $dependency null )
$key mixed

キャッシュする値を識別するキー。単純な文字列またはキーを表す要素からなる複雑なデータ構造にすることができます。

$value mixed

キャッシュする値

$duration integer

キャッシュされた値が期限切れになるまでの秒数。0 は期限切れにならないことを意味します。

$dependency yii\caching\Dependency|null

キャッシュされたアイテムの依存関係。依存関係が変更されると、get()を介してフェッチされた際に、キャッシュ内の対応する値が無効になります。このパラメータは、$serializerがfalseの場合、無視されます。

戻り値 boolean

値がキャッシュに正常に保存されたかどうか

                public function add($key, $value, $duration = 0, $dependency = null)
{
    if ($dependency !== null && $this->serializer !== false) {
        $dependency->evaluateDependency($this);
    }
    if ($this->serializer === null) {
        $value = serialize([$value, $dependency]);
    } elseif ($this->serializer !== false) {
        $value = call_user_func($this->serializer[0], [$value, $dependency]);
    }
    $key = $this->buildKey($key);
    return $this->addValue($key, $value, $duration);
}

            
addValue() protectedメソッド

キャッシュにキーで識別される値を格納します(キャッシュにこのキーが含まれていない場合)。

これは、親クラスで宣言されたメソッドの実装です。

protected boolean addValue ( $key, $value, $duration )
$key string

キャッシュする値を識別するキー

$value mixed

キャッシュする値。ほとんどの場合、文字列です。$serializerを無効にした場合は、それ以外のものになる可能性があります。

$duration integer

キャッシュされた値が期限切れになるまでの秒数。0 は期限切れにならないことを意味します。

戻り値 boolean

値がキャッシュに正常に保存された場合はtrue、そうでない場合はfalse

                protected function addValue($key, $value, $duration)
{
    return $this->useApcu ? apcu_add($key, $value, $duration) : apc_add($key, $value, $duration);
}

            
addValues() protectedメソッド

複数のキーと値のペアをキャッシュに追加します。

protected array addValues ( $data, $duration )
$data array

キーがキャッシュキーに対応し、値が保存される値である配列

$duration integer

キャッシュされた値の有効期限(秒数)。0 は期限切れにならないことを意味します。

戻り値 array

失敗したキーの配列

                protected function addValues($data, $duration)
{
    $result = $this->useApcu ? apcu_add($data, null, $duration) : apc_add($data, null, $duration);
    return is_array($result) ? array_keys($result) : [];
}

            
attachBehavior() publicメソッド

定義されている場所: yii\base\Component::attachBehavior()

このコンポーネントにビヘイビアをアタッチします。

このメソッドは、指定された設定に基づいてビヘイビアオブジェクトを作成します。その後、yii\base\Behavior::attach()メソッドを呼び出すことで、ビヘイビアオブジェクトがこのコンポーネントにアタッチされます。

こちらも参照してください detachBehavior().

public yii\base\Behavior attachBehavior ( $name, $behavior )
$name string

ビヘイビアの名前。

$behavior string|array|yii\base\Behavior

ビヘイビアの設定。以下のいずれかになります。

  • yii\base\Behaviorオブジェクト
  • ビヘイビアクラスを指定する文字列
  • ビヘイビアオブジェクトを作成するためにYii::createObject()に渡されるオブジェクト設定配列。
戻り値 yii\base\Behavior

ビヘイビアオブジェクト

                public function attachBehavior($name, $behavior)
{
    $this->ensureBehaviors();
    return $this->attachBehaviorInternal($name, $behavior);
}

            
attachBehaviors() publicメソッド

定義されている場所: yii\base\Component::attachBehaviors()

コンポーネントにビヘイビアのリストをアタッチします。

各ビヘイビアは名前でインデックス付けされ、yii\base\Behaviorオブジェクト、ビヘイビアクラスを指定する文字列、またはビヘイビアを作成するための設定配列である必要があります。

こちらも参照してください attachBehavior().

public void attachBehaviors ( $behaviors )
$behaviors array

コンポーネントにアタッチされるビヘイビアのリスト

                public function attachBehaviors($behaviors)
{
    $this->ensureBehaviors();
    foreach ($behaviors as $name => $behavior) {
        $this->attachBehaviorInternal($name, $behavior);
    }
}

            
behaviors() publicメソッド

定義されている場所: yii\base\Component::behaviors()

このコンポーネントが持つべきビヘイビアのリストを返します。

子クラスは、このメソッドをオーバーライドして、動作させたいビヘイビアを指定できます。

このメソッドの戻り値は、ビヘイビア名でインデックス付けされたビヘイビアオブジェクトまたは設定の配列である必要があります。ビヘイビアの設定は、ビヘイビアクラスを指定する文字列、または以下の構造の配列のいずれかになります。

'behaviorName' => [
    'class' => 'BehaviorClass',
    'property1' => 'value1',
    'property2' => 'value2',
]

ビヘイビアクラスはyii\base\Behaviorを拡張する必要があることに注意してください。ビヘイビアは名前付きまたは匿名でアタッチできます。配列キーとして名前が使用されている場合、この名前を使用して、getBehavior()を使用してビヘイビアを後で取得したり、detachBehavior()を使用してデタッチしたりできます。匿名ビヘイビアは取得またはデタッチできません。

このメソッドで宣言されたビヘイビアは、コンポーネントに自動的に(オンデマンドで)アタッチされます。

public array behaviors ( )
戻り値 array

ビヘイビアの設定。

                public function behaviors()
{
    return [];
}

            
buildKey() publicメソッド

定義されている場所: yii\caching\Cache::buildKey()

指定されたキーから正規化されたキャッシュキーを構築します。

指定されたキーが英数字のみを含む文字列で、32文字以下の場合、$keyPrefixを接頭辞として付けたキーが返されます。それ以外の場合は、指定されたキーをシリアル化し、MD5ハッシュを適用し、$keyPrefixを接頭辞として付けることで、正規化されたキーが生成されます。

public string buildKey ( $key )
$key mixed

正規化されるキー

戻り値 string

生成されたキャッシュキー

                public function buildKey($key)
{
    if (is_string($key)) {
        $key = ctype_alnum($key) && StringHelper::byteLength($key) <= 32 ? $key : md5($key);
    } else {
        if ($this->_igbinaryAvailable) {
            $serializedKey = igbinary_serialize($key);
        } else {
            $serializedKey = serialize($key);
        }
        $key = md5($serializedKey);
    }
    return $this->keyPrefix . $key;
}

            
canGetProperty() publicメソッド

定義されている場所: yii\base\Component::canGetProperty()

プロパティを読み取ることができるかどうかを示す値を返します。

プロパティは、以下の場合に読み取ることができます。

  • クラスに、指定された名前に関連付けられたゲッターメソッドがある場合(この場合、プロパティ名はケースインセンシティブです)。
  • クラスに、指定された名前のメンバー変数がある場合($checkVarsがtrueの場合)。
  • アタッチされたビヘイビアに、指定された名前の読み取り可能なプロパティがある場合($checkBehaviorsがtrueの場合)。

こちらも参照してください canSetProperty().

public boolean canGetProperty ( $name, $checkVars true, $checkBehaviors true )
$name string

プロパティ名

$checkVars boolean

メンバー変数をプロパティとして扱うかどうか

$checkBehaviors boolean

ビヘイビアのプロパティをこのコンポーネントのプロパティとして扱うかどうか

戻り値 boolean

プロパティを読み取ることができるかどうか

                public function canGetProperty($name, $checkVars = true, $checkBehaviors = true)
{
    if (method_exists($this, 'get' . $name) || $checkVars && property_exists($this, $name)) {
        return true;
    } elseif ($checkBehaviors) {
        $this->ensureBehaviors();
        foreach ($this->_behaviors as $behavior) {
            if ($behavior->canGetProperty($name, $checkVars)) {
                return true;
            }
        }
    }
    return false;
}

            
canSetProperty() publicメソッド

定義されている場所: yii\base\Component::canSetProperty()

プロパティを設定できるかどうかを示す値を返します。

プロパティは、以下の場合に書き込むことができます。

  • クラスに、指定された名前に関連付けられたセッターメソッドがある場合(この場合、プロパティ名はケースインセンシティブです)。
  • クラスに、指定された名前のメンバー変数がある場合($checkVarsがtrueの場合)。
  • アタッチされたビヘイビアに、指定された名前の書き込み可能なプロパティがある場合($checkBehaviorsがtrueの場合)。

こちらも参照してください canGetProperty().

public boolean canSetProperty ( $name, $checkVars true, $checkBehaviors true )
$name string

プロパティ名

$checkVars boolean

メンバー変数をプロパティとして扱うかどうか

$checkBehaviors boolean

ビヘイビアのプロパティをこのコンポーネントのプロパティとして扱うかどうか

戻り値 boolean

プロパティを書き込むことができるかどうか

                public function canSetProperty($name, $checkVars = true, $checkBehaviors = true)
{
    if (method_exists($this, 'set' . $name) || $checkVars && property_exists($this, $name)) {
        return true;
    } elseif ($checkBehaviors) {
        $this->ensureBehaviors();
        foreach ($this->_behaviors as $behavior) {
            if ($behavior->canSetProperty($name, $checkVars)) {
                return true;
            }
        }
    }
    return false;
}

            
className() public staticメソッド
2.0.14以降非推奨。PHP >= 5.5では、代わりに::classを使用してください。

定義されている場所: yii\base\BaseObject::className()

このクラスの完全修飾名を返します。

public static string className ( )
戻り値 string

このクラスの完全修飾名。

                public static function className()
{
    return get_called_class();
}

            
delete() publicメソッド

定義されている場所: yii\caching\Cache::delete()

指定されたキーの値をキャッシュから削除します。

public boolean delete ( $key )
$key mixed

キャッシュから削除する値を識別するキー。これは、単純な文字列、またはキーを表す要素からなる複雑なデータ構造にすることができます。

戻り値 boolean

削除中にエラーが発生しなかった場合

                public function delete($key)
{
    $key = $this->buildKey($key);
    return $this->deleteValue($key);
}

            
deleteValue() protectedメソッド

指定されたキーの値をキャッシュから削除します。これは、親クラスで宣言されたメソッドの実装です。

protected boolean deleteValue ( $key )
$key string

削除する値のキー

戻り値 boolean

削除中にエラーが発生しなかった場合

                protected function deleteValue($key)
{
    return $this->useApcu ? apcu_delete($key) : apc_delete($key);
}

            
detachBehavior() publicメソッド

定義されている場所: yii\base\Component::detachBehavior()

コンポーネントからビヘイビアをデタッチします。

ビヘイビアのyii\base\Behavior::detach()メソッドが呼び出されます。

public yii\base\Behavior|null detachBehavior ( $name )
$name string

ビヘイビアの名前。

戻り値 yii\base\Behavior|null

デタッチされたビヘイビア。ビヘイビアが存在しない場合はNull。

                public function detachBehavior($name)
{
    $this->ensureBehaviors();
    if (isset($this->_behaviors[$name])) {
        $behavior = $this->_behaviors[$name];
        unset($this->_behaviors[$name]);
        $behavior->detach();
        return $behavior;
    }
    return null;
}

            
detachBehaviors() public メソッド

定義場所: yii\base\Component::detachBehaviors()

コンポーネントからすべてのビヘイビアをデタッチします。

public void detachBehaviors ( )

                public function detachBehaviors()
{
    $this->ensureBehaviors();
    foreach ($this->_behaviors as $name => $behavior) {
        $this->detachBehavior($name);
    }
}

            
ensureBehaviors() public メソッド

定義場所: yii\base\Component::ensureBehaviors()

behaviors()で宣言されたビヘイビアがこのコンポーネントにアタッチされていることを確認します。

public void ensureBehaviors ( )

                public function ensureBehaviors()
{
    if ($this->_behaviors === null) {
        $this->_behaviors = [];
        foreach ($this->behaviors() as $name => $behavior) {
            $this->attachBehaviorInternal($name, $behavior);
        }
    }
}

            
exists() public メソッド

指定されたキーがキャッシュに存在するかどうかを確認します。

データが大きい場合、キャッシュから値を取得するよりも高速です。このメソッドは、キャッシュされたデータに関連付けられた依存関係(存在する場合)が変更されたかどうかをチェックしません。get()の呼び出しはfalseを返す可能性がありますが、existsはtrueを返す可能性があります。

public boolean exists ( $key )
$key mixed

キャッシュされた値を一意に識別するキー。単純な文字列またはキーを表す要素からなる複雑なデータ構造にすることができます。

戻り値 boolean

キャッシュに値が存在する場合はtrue、値がキャッシュにないか期限切れの場合はfalse。

                public function exists($key)
{
    $key = $this->buildKey($key);
    return $this->useApcu ? apcu_exists($key) : apc_exists($key);
}

            
flush() public メソッド

定義場所: yii\caching\Cache::flush()

キャッシュからすべての値を削除します。

キャッシュが複数のアプリケーションで共有されている場合、この操作の実行には注意が必要です。

public boolean flush ( )
戻り値 boolean

フラッシュ操作が成功したかどうか。

                public function flush()
{
    return $this->flushValues();
}

            
flushValues() protected メソッド

キャッシュからすべての値を削除します。

これは、親クラスで宣言されたメソッドの実装です。

protected boolean flushValues ( )
戻り値 boolean

フラッシュ操作が成功したかどうか。

                protected function flushValues()
{
    return $this->useApcu ? apcu_clear_cache() : apc_clear_cache('user');
}

            
get() public メソッド

定義場所: yii\caching\Cache::get()

指定されたキーでキャッシュから値を取得します。

public mixed get ( $key )
$key mixed

キャッシュされた値を一意に識別するキー。単純な文字列またはキーを表す要素からなる複雑なデータ構造にすることができます。

戻り値 mixed

キャッシュに保存されている値。値がキャッシュにない、期限切れである、またはキャッシュされたデータに関連付けられた依存関係が変更された場合はfalse。

                public function get($key)
{
    $key = $this->buildKey($key);
    $value = $this->getValue($key);
    if ($value === false || $this->serializer === false) {
        return $value;
    } elseif ($this->serializer === null) {
        $value = unserialize((string)$value);
    } else {
        $value = call_user_func($this->serializer[1], $value);
    }
    if (is_array($value) && !($value[1] instanceof Dependency && $value[1]->isChanged($this))) {
        return $value[0];
    }
    return false;
}

            
getBehavior() public メソッド

定義場所: yii\base\Component::getBehavior()

名前付きビヘイビアオブジェクトを返します。

public yii\base\Behavior|null getBehavior ( $name )
$name string

ビヘイビア名

戻り値 yii\base\Behavior|null

ビヘイビアオブジェクト。ビヘイビアが存在しない場合はnull。

                public function getBehavior($name)
{
    $this->ensureBehaviors();
    return isset($this->_behaviors[$name]) ? $this->_behaviors[$name] : null;
}

            
getBehaviors() public メソッド

定義場所: yii\base\Component::getBehaviors()

このコンポーネントにアタッチされたすべてのビヘイビアを返します。

public yii\base\Behavior[] getBehaviors ( )
戻り値 yii\base\Behavior[]

このコンポーネントにアタッチされているビヘイビアのリスト。

                public function getBehaviors()
{
    $this->ensureBehaviors();
    return $this->_behaviors;
}

            
getOrSet() public メソッド (バージョン 2.0.11 から使用可能)

定義場所: yii\caching\Cache::getOrSet()

メソッドは、set()メソッドとget()メソッドの両方を組み合わせて、$keyで識別される値を取得するか、$keyに利用可能なキャッシュがない場合に$callableの実行結果を格納します。

使用例

public function getTopProducts($count = 10) {
    $cache = $this->cache; // Could be Yii::$app->cache
    return $cache->getOrSet(['top-n-products', 'n' => $count], function () use ($count) {
        return Products::find()->mostPopular()->limit($count)->all();
    }, 1000);
}
public mixed getOrSet ( $key, $callable, $duration null, $dependency null )
$key mixed

キャッシュする値を識別するキー。単純な文字列またはキーを表す要素からなる複雑なデータ構造にすることができます。

$callable callable|Closure

キャッシュされる値を生成するために使用されるcallableまたはクロージャ。`false`を返す可能性のある`$callable`を使用する場合は、getOrSet()が非効率的に動作する可能性があることに注意してください。yii\caching\Cache::get()メソッドは、`false`の戻り値を使用して、データ項目がキャッシュに見つからないことを示しているためです。そのため、`false`値のキャッシングは、不要な内部呼び出しにつながります。

$duration integer|null

キャッシュが期限切れになるまでの秒単位のデフォルト期間。設定されていない場合、$defaultDuration値が使用されます。

$dependency yii\caching\Dependency|null

キャッシュされたアイテムの依存関係。依存関係が変更されると、get()を介してフェッチされたときに、キャッシュ内の対応する値が無効になります。このパラメーターは、$serializerが`false`の場合は無視されます。

戻り値 mixed

$callable実行の結果

                public function getOrSet($key, $callable, $duration = null, $dependency = null)
{
    if (($value = $this->get($key)) !== false) {
        return $value;
    }
    $value = call_user_func($callable, $this);
    if (!$this->set($key, $value, $duration, $dependency)) {
        Yii::warning('Failed to set cache value for key ' . json_encode($key), __METHOD__);
    }
    return $value;
}

            
getValue() protected メソッド

指定されたキーでキャッシュから値を取得します。

これは、親クラスで宣言されたメソッドの実装です。

protected mixed|false getValue ( $key )
$key string

キャッシュされた値を一意に識別するキー。

戻り値 mixed|false

キャッシュに保存されている値。値がキャッシュにないか期限切れの場合はfalse。

                protected function getValue($key)
{
    return $this->useApcu ? apcu_fetch($key) : apc_fetch($key);
}

            
getValues() protected メソッド

指定されたキーでキャッシュから複数の値を取得します。

protected array getValues ( $keys )
$keys array

キャッシュされた値を一意に識別するキーのリスト。

戻り値 array

キーでインデックス付けされたキャッシュされた値のリスト。

                protected function getValues($keys)
{
    $values = $this->useApcu ? apcu_fetch($keys) : apc_fetch($keys);
    return is_array($values) ? $values : [];
}

            
hasEventHandlers() public メソッド

定義場所: yii\base\Component::hasEventHandlers()

名前付きイベントにハンドラがアタッチされているかどうかを示す値を返します。

public boolean hasEventHandlers ( $name )
$name string

イベント名。

戻り値 boolean

イベントにハンドラがアタッチされているかどうか。

                public function hasEventHandlers($name)
{
    $this->ensureBehaviors();
    if (!empty($this->_events[$name])) {
        return true;
    }
    foreach ($this->_eventWildcards as $wildcard => $handlers) {
        if (!empty($handlers) && StringHelper::matchWildcard($wildcard, $name)) {
            return true;
        }
    }
    return Event::hasHandlers($this, $name);
}

            
hasMethod() publicメソッド

定義位置: yii\base\Component::hasMethod()

メソッドが定義されているかどうかを示す値を返します。

メソッドは、以下の場合に定義済みとみなされます。

  • 指定された名前のメソッドがクラスに存在する場合
  • アタッチされたビヘイビアに、指定された名前のメソッドが存在する場合($checkBehaviors が true の場合)。
public boolean hasMethod ( $name, $checkBehaviors true )
$name string

プロパティ名

$checkBehaviors boolean

ビヘイビアのメソッドをこのコンポーネントのメソッドとして扱うかどうか

戻り値 boolean

メソッドが定義されているかどうか

                public function hasMethod($name, $checkBehaviors = true)
{
    if (method_exists($this, $name)) {
        return true;
    } elseif ($checkBehaviors) {
        $this->ensureBehaviors();
        foreach ($this->_behaviors as $behavior) {
            if ($behavior->hasMethod($name)) {
                return true;
            }
        }
    }
    return false;
}

            
hasProperty() publicメソッド

定義位置: yii\base\Component::hasProperty()

このコンポーネントのプロパティが定義されているかどうかを示す値を返します。

プロパティは、以下の場合に定義済みとみなされます。

  • 指定された名前と関連付けられたゲッターまたはセッターメソッドがクラスに存在する場合(この場合、プロパティ名はケースインセンシティブです)。
  • クラスに、指定された名前のメンバー変数がある場合($checkVarsがtrueの場合)。
  • アタッチされたビヘイビアに、指定された名前のプロパティが存在する場合($checkBehaviors が true の場合)。

参照

public boolean hasProperty ( $name, $checkVars true, $checkBehaviors true )
$name string

プロパティ名

$checkVars boolean

メンバー変数をプロパティとして扱うかどうか

$checkBehaviors boolean

ビヘイビアのプロパティをこのコンポーネントのプロパティとして扱うかどうか

戻り値 boolean

プロパティが定義されているかどうか

                public function hasProperty($name, $checkVars = true, $checkBehaviors = true)
{
    return $this->canGetProperty($name, $checkVars, $checkBehaviors) || $this->canSetProperty($name, false, $checkBehaviors);
}

            
init() publicメソッド

このアプリケーションコンポーネントを初期化します。

必要な拡張機能がロードされているかどうかを確認します。

public void init ( )

                public function init()
{
    parent::init();
    $extension = $this->useApcu ? 'apcu' : 'apc';
    if (!extension_loaded($extension)) {
        throw new InvalidConfigException("ApcCache requires PHP $extension extension to be loaded.");
    }
}

            
madd() publicメソッド
非推奨 このメソッドは multiAdd() のエイリアスであり、2.1.0で削除されます。

定義位置: yii\caching\Cache::madd()

複数のアイテムをキャッシュに格納します。各アイテムには、キーで識別される値が含まれています。

キャッシュに既に同じキーが存在する場合、既存の値と有効期限は保持されます。

public array madd ( $items, $duration 0, $dependency null )
$items array

キーと値のペアとしてキャッシュされるアイテム。

$duration integer

キャッシュされた値の有効期限(秒)。0 は期限切れなし。

$dependency yii\caching\Dependency|null

キャッシュされたアイテムの依存関係。依存関係が変更されると、get() を介してフェッチされた際に、キャッシュ内の対応する値が無効になります。 $serializer が false の場合、このパラメーターは無視されます。

戻り値 array

失敗したキーの配列

                public function madd($items, $duration = 0, $dependency = null)
{
    return $this->multiAdd($items, $duration, $dependency);
}

            
mget() publicメソッド
非推奨 このメソッドは multiGet() のエイリアスであり、2.1.0で削除されます。

定義位置: yii\caching\Cache::mget()

指定されたキーでキャッシュから複数の値を取得します。

一部のキャッシュ(memcache、apcなど)では、複数のキャッシュされた値を同時に取得できます。これにより、パフォーマンスが向上する可能性があります。キャッシュがネイティブにこの機能をサポートしていない場合、このメソッドはそれをシミュレートしようとします。

public array mget ( $keys )
$keys string[]

キャッシュされた値を識別する文字列キーのリスト

戻り値 array

指定されたキーに対応するキャッシュされた値のリスト。配列は(キー、値)ペアで返されます。値がキャッシュされていない場合、または期限切れの場合、対応する配列の値は false になります。

                public function mget($keys)
{
    return $this->multiGet($keys);
}

            
mset() publicメソッド
非推奨 このメソッドは multiSet() のエイリアスであり、2.1.0で削除されます。

定義位置: yii\caching\Cache::mset()

複数のアイテムをキャッシュに格納します。各アイテムには、キーで識別される値が含まれています。

キャッシュに既に同じキーが存在する場合、既存の値と有効期限はそれぞれ新しい値で置き換えられます。

public array mset ( $items, $duration null, $dependency null )
$items array

キーと値のペアとしてキャッシュされるアイテム。

$duration integer|null

キャッシュが期限切れになるまでのデフォルトの期間(秒)。設定されていない場合、デフォルトの $defaultDuration 値が使用されます。

$dependency yii\caching\Dependency|null

キャッシュされたアイテムの依存関係。依存関係が変更されると、get() を介してフェッチされた際に、キャッシュ内の対応する値が無効になります。 $serializer が false の場合、このパラメーターは無視されます。

戻り値 array

失敗したキーの配列

                public function mset($items, $duration = null, $dependency = null)
{
    return $this->multiSet($items, $duration, $dependency);
}

            
multiAdd() publicメソッド (バージョン 2.0.7 から利用可能)

定義位置: yii\caching\Cache::multiAdd()

複数のアイテムをキャッシュに格納します。各アイテムには、キーで識別される値が含まれています。

キャッシュに既に同じキーが存在する場合、既存の値と有効期限は保持されます。

public array multiAdd ( $items, $duration 0, $dependency null )
$items array

キーと値のペアとしてキャッシュされるアイテム。

$duration integer

キャッシュされた値の有効期限(秒)。0 は期限切れなし。

$dependency yii\caching\Dependency|null

キャッシュされたアイテムの依存関係。依存関係が変更されると、get() を介してフェッチされた際に、キャッシュ内の対応する値が無効になります。 $serializer が false の場合、このパラメーターは無視されます。

戻り値 array

失敗したキーの配列

                public function multiAdd($items, $duration = 0, $dependency = null)
{
    $data = $this->prepareCacheData($items, $dependency);
    return $this->addValues($data, $duration);
}

            
multiGet() publicメソッド (バージョン 2.0.7 から利用可能)

定義位置: yii\caching\Cache::multiGet()

指定されたキーでキャッシュから複数の値を取得します。

一部のキャッシュ(memcache、apcなど)では、複数のキャッシュされた値を同時に取得できます。これにより、パフォーマンスが向上する可能性があります。キャッシュがネイティブにこの機能をサポートしていない場合、このメソッドはそれをシミュレートしようとします。

public array multiGet ( $keys )
$keys string[]

キャッシュされた値を識別する文字列キーのリスト

戻り値 array

指定されたキーに対応するキャッシュされた値のリスト。配列は(キー、値)ペアで返されます。値がキャッシュされていない場合、または期限切れの場合、対応する配列の値は false になります。

                public function multiGet($keys)
{
    $keyMap = [];
    foreach ($keys as $key) {
        $keyMap[$key] = $this->buildKey($key);
    }
    $values = $this->getValues(array_values($keyMap));
    $results = [];
    foreach ($keyMap as $key => $newKey) {
        $results[$key] = false;
        if (isset($values[$newKey])) {
            if ($this->serializer === false) {
                $results[$key] = $values[$newKey];
            } else {
                $value = $this->serializer === null ? unserialize($values[$newKey])
                    : call_user_func($this->serializer[1], $values[$newKey]);
                if (is_array($value) && !($value[1] instanceof Dependency && $value[1]->isChanged($this))) {
                    $results[$key] = $value[0];
                }
            }
        }
    }
    return $results;
}

            
multiSet() publicメソッド (バージョン 2.0.7 から利用可能)

定義位置: yii\caching\Cache::multiSet()

複数のアイテムをキャッシュに格納します。各アイテムには、キーで識別される値が含まれています。

キャッシュに既に同じキーが存在する場合、既存の値と有効期限はそれぞれ新しい値で置き換えられます。

public array multiSet ( $items, $duration null, $dependency null )
$items array

キーと値のペアとしてキャッシュされるアイテム。

$duration integer|null

キャッシュが期限切れになるまでのデフォルトの期間(秒)。設定されていない場合、デフォルトの $defaultDuration 値が使用されます。

$dependency yii\caching\Dependency|null

キャッシュされたアイテムの依存関係。依存関係が変更されると、get() を介してフェッチされた際に、キャッシュ内の対応する値が無効になります。 $serializer が false の場合、このパラメーターは無視されます。

戻り値 array

失敗したキーの配列

                public function multiSet($items, $duration = null, $dependency = null)
{
    if ($duration === null) {
        $duration = $this->defaultDuration;
    }
    $data = $this->prepareCacheData($items, $dependency);
    return $this->setValues($data, $duration);
}

            
off() publicメソッド

定義位置: yii\base\Component::off()

このコンポーネントから既存のイベントハンドラをデタッチします。

このメソッドは、on()の逆の動作をします。

注記: イベント名にワイルドカードパターンが渡された場合、このワイルドカードで登録されたハンドラのみが削除され、このワイルドカードに一致するプレーンな名前で登録されたハンドラは残ります。

参照: on()

public boolean off ( $name, $handler null )
$name string

イベント名

$handler callable|null

削除するイベントハンドラ。nullの場合、指定されたイベントにアタッチされているすべてのハンドラが削除されます。

戻り値 boolean

ハンドラが見つかり、デタッチされた場合

                public function off($name, $handler = null)
{
    $this->ensureBehaviors();
    if (empty($this->_events[$name]) && empty($this->_eventWildcards[$name])) {
        return false;
    }
    if ($handler === null) {
        unset($this->_events[$name], $this->_eventWildcards[$name]);
        return true;
    }
    $removed = false;
    // plain event names
    if (isset($this->_events[$name])) {
        foreach ($this->_events[$name] as $i => $event) {
            if ($event[0] === $handler) {
                unset($this->_events[$name][$i]);
                $removed = true;
            }
        }
        if ($removed) {
            $this->_events[$name] = array_values($this->_events[$name]);
            return true;
        }
    }
    // wildcard event names
    if (isset($this->_eventWildcards[$name])) {
        foreach ($this->_eventWildcards[$name] as $i => $event) {
            if ($event[0] === $handler) {
                unset($this->_eventWildcards[$name][$i]);
                $removed = true;
            }
        }
        if ($removed) {
            $this->_eventWildcards[$name] = array_values($this->_eventWildcards[$name]);
            // remove empty wildcards to save future redundant regex checks:
            if (empty($this->_eventWildcards[$name])) {
                unset($this->_eventWildcards[$name]);
            }
        }
    }
    return $removed;
}

            
offsetExists() publicメソッド

定義位置: yii\caching\Cache::offsetExists()

指定されたキーを持つキャッシュエントリがあるかどうかを返します。

このメソッドは、インターフェースArrayAccessで要求されています。

public boolean offsetExists ( $key )
$key string

キャッシュされた値を識別するキー

                #[\ReturnTypeWillChange]
public function offsetExists($key)
{
    return $this->get($key) !== false;
}

            
offsetGet() publicメソッド

定義位置: yii\caching\Cache::offsetGet()

指定されたキーでキャッシュから値を取得します。

このメソッドは、インターフェースArrayAccessで要求されています。

public mixed offsetGet ( $key )
$key string

キャッシュされた値を識別するキー

戻り値 mixed

キャッシュに保存されている値。値がキャッシュにないか期限切れの場合はfalse。

                #[\ReturnTypeWillChange]
public function offsetGet($key)
{
    return $this->get($key);
}

            
offsetSet() publicメソッド

定義位置: yii\caching\Cache::offsetSet()

キーで識別される値をキャッシュに格納します。

キャッシュに既に同じキーが存在する場合は、既存の値が新しい値で置き換えられます。有効期限と依存関係を追加するには、set()メソッドを使用してください。このメソッドは、インターフェースArrayAccessで要求されています。

public void offsetSet ( $key, $value )
$key string

キャッシュする値を識別するキー

$value mixed

キャッシュする値

                #[\ReturnTypeWillChange]
public function offsetSet($key, $value)
{
    $this->set($key, $value);
}

            
offsetUnset() publicメソッド

定義位置: yii\caching\Cache::offsetUnset()

指定されたキーの値をキャッシュから削除します。このメソッドは、インターフェースArrayAccessで必要です。

public void offsetUnset ( $key )
$key string

削除する値のキー

                #[\ReturnTypeWillChange]
public function offsetUnset($key)
{
    $this->delete($key);
}

            
on() publicメソッド

定義位置: yii\base\Component::on()

イベントにイベントハンドラをアタッチします。

イベントハンドラは有効なPHPコールバックでなければなりません。いくつかの例を以下に示します。

function ($event) { ... }         // anonymous function
[$object, 'handleClick']          // $object->handleClick()
['Page', 'handleClick']           // Page::handleClick()
'handleClick'                     // global function handleClick()

イベントハンドラは、以下のシグネチャで定義する必要があります。

function ($event)

ここで、`$event`は、イベントに関連付けられたパラメータを含むyii\base\Eventオブジェクトです。

2.0.14以降、イベント名をワイルドカードパターンとして指定できます。

$component->on('event.group.*', function ($event) {
    Yii::trace($event->name . ' is triggered.');
});

参照: off()

public void on ( $name, $handler, $data null, $append true )
$name string

イベント名。

$handler callable

イベントハンドラ

$data mixed

イベントが発生したときにイベントハンドラに渡されるデータ。イベントハンドラが呼び出されると、このデータはyii\base\Event::$dataからアクセスできます。

$append boolean

新しいイベントハンドラを既存のハンドラリストの最後に追加するかどうか。falseの場合、新しいハンドラは既存のハンドラリストの先頭に挿入されます。

                public function on($name, $handler, $data = null, $append = true)
{
    $this->ensureBehaviors();
    if (strpos($name, '*') !== false) {
        if ($append || empty($this->_eventWildcards[$name])) {
            $this->_eventWildcards[$name][] = [$handler, $data];
        } else {
            array_unshift($this->_eventWildcards[$name], [$handler, $data]);
        }
        return;
    }
    if ($append || empty($this->_events[$name])) {
        $this->_events[$name][] = [$handler, $data];
    } else {
        array_unshift($this->_events[$name], [$handler, $data]);
    }
}

            
set() publicメソッド

定義位置: yii\caching\Cache::set()

キーで識別される値をキャッシュに格納します。

キャッシュに既に同じキーが存在する場合、既存の値と有効期限はそれぞれ新しい値で置き換えられます。

public boolean set ( $key, $value, $duration null, $dependency null )
$key mixed

キャッシュする値を識別するキー。単純な文字列またはキーを表す要素からなる複雑なデータ構造にすることができます。

$value mixed

キャッシュする値

$duration integer|null

キャッシュが期限切れになるまでのデフォルトの期間(秒)。設定されていない場合、デフォルトの $defaultDuration 値が使用されます。

$dependency yii\caching\Dependency|null

キャッシュされたアイテムの依存関係。依存関係が変更されると、get()を介してフェッチされた際に、キャッシュ内の対応する値が無効になります。このパラメータは、$serializerがfalseの場合、無視されます。

戻り値 boolean

値がキャッシュに正常に保存されたかどうか

                public function set($key, $value, $duration = null, $dependency = null)
{
    if ($duration === null) {
        $duration = $this->defaultDuration;
    }
    if ($dependency !== null && $this->serializer !== false) {
        $dependency->evaluateDependency($this);
    }
    if ($this->serializer === null) {
        $value = serialize([$value, $dependency]);
    } elseif ($this->serializer !== false) {
        $value = call_user_func($this->serializer[0], [$value, $dependency]);
    }
    $key = $this->buildKey($key);
    return $this->setValue($key, $value, $duration);
}

            
setValue() protectedメソッド

キーで識別される値をキャッシュに格納します。

これは、親クラスで宣言されたメソッドの実装です。

protected boolean setValue ( $key, $value, $duration )
$key string

キャッシュする値を識別するキー

$value mixed

キャッシュする値。ほとんどの場合、文字列です。$serializerを無効にした場合は、それ以外のものになる可能性があります。

$duration integer

キャッシュされた値が期限切れになるまでの秒数。0 は期限切れにならないことを意味します。

戻り値 boolean

値がキャッシュに正常に保存された場合はtrue、それ以外の場合はfalse。

                protected function setValue($key, $value, $duration)
{
    return $this->useApcu ? apcu_store($key, $value, $duration) : apc_store($key, $value, $duration);
}

            
setValues() protectedメソッド

複数のキーと値のペアをキャッシュに格納します。

protected array setValues ( $data, $duration )
$data array

キーがキャッシュキーに対応し、値が

$duration integer

キャッシュされた値の有効期限(秒数)。0 は期限切れにならないことを意味します。

戻り値 array

失敗したキーの配列

                protected function setValues($data, $duration)
{
    $result = $this->useApcu ? apcu_store($data, null, $duration) : apc_store($data, null, $duration);
    return is_array($result) ? array_keys($result) : [];
}

            
trigger() publicメソッド

定義位置: yii\base\Component::trigger()

イベントをトリガーします。

このメソッドは、イベントの発生を表します。クラスレベルのハンドラを含む、イベントにアタッチされたすべてのハンドラを呼び出します。

public void trigger ( $name, yii\base\Event $event null )
$name string

イベント名。

$event yii\base\Event|null

イベントインスタンス。設定されていない場合、デフォルトのyii\base\Eventオブジェクトが作成されます。

                public function trigger($name, Event $event = null)
{
    $this->ensureBehaviors();
    $eventHandlers = [];
    foreach ($this->_eventWildcards as $wildcard => $handlers) {
        if (StringHelper::matchWildcard($wildcard, $name)) {
            $eventHandlers[] = $handlers;
        }
    }
    if (!empty($this->_events[$name])) {
        $eventHandlers[] = $this->_events[$name];
    }
    if (!empty($eventHandlers)) {
        $eventHandlers = call_user_func_array('array_merge', $eventHandlers);
        if ($event === null) {
            $event = new Event();
        }
        if ($event->sender === null) {
            $event->sender = $this;
        }
        $event->handled = false;
        $event->name = $name;
        foreach ($eventHandlers as $handler) {
            $event->data = $handler[1];
            call_user_func($handler[0], $event);
            // stop further handling if the event is handled
            if ($event->handled) {
                return;
            }
        }
    }
    // invoke class-level attached handlers
    Event::trigger($this, $name, $event);
}