0 フォロワー

クラス yii\caching\ZendDataCache

継承yii\caching\ZendDataCache » yii\caching\Cache » yii\base\Component » yii\base\BaseObject
実装yii\base\Configurable, yii\caching\CacheInterface
利用可能バージョン2.0
非推奨バージョン2.0.14以降。このクラスは2.1.0で削除されます。
ソースコード https://github.com/yiisoft/yii2/blob/master/framework/caching/ZendDataCache.php

ZendDataCache は、アプリケーションコンポーネントとして Zend データキャッシュを提供します。

このアプリケーションコンポーネントを使用するには、Zend Data Cache PHP 拡張機能をロードする必要があります。

ZendDataCache がサポートする一般的なキャッシュ操作については、yii\caching\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

公開メソッド

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

メソッド 説明 定義元
__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\Cache
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\Cache
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\ZendDataCache
addValues() 複数のキーと値のペアをキャッシュに追加します。 yii\caching\Cache
deleteValue() 指定されたキーを持つ値をキャッシュから削除します。これは、親クラスで宣言されたメソッドの実装です。 yii\caching\ZendDataCache
flushValues() キャッシュからすべての値を削除します。 yii\caching\ZendDataCache
getValue() 指定されたキーを使用してキャッシュから値を取得します。 yii\caching\ZendDataCache
getValues() 指定されたキーを使用して、キャッシュから複数の値を取得します。 yii\caching\Cache
setValue() キャッシュ内のキーで識別される値を格納します。 yii\caching\ZendDataCache
setValues() キャッシュに複数のキーと値のペアを格納します。 yii\caching\Cache

メソッドの詳細

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

__call() 公開メソッド

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

クラスメソッドではない、指定された名前のメソッドを呼び出します。

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

不明なメソッドが呼び出されるときに暗黙的に呼び出される PHP マジックメソッドであるため、このメソッドを直接呼び出さないでください。

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

メソッド名

$params array

メソッドのパラメータ

return mixed

メソッドの戻り値

throws 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()

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

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

  • getterによって定義されたプロパティ: getterの結果を返す
  • ビヘイビアのプロパティ: ビヘイビアのプロパティ値を返す

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

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

public mixed __get ( $name )
$name string

プロパティ名

return mixed

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

throws yii\base\UnknownPropertyException

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

throws 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でないかを確認します。

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

  • setterによって定義されたプロパティ: プロパティが設定されているかどうかを返す
  • ビヘイビアのプロパティ: プロパティが設定されているかどうかを返す
  • 存在しないプロパティの場合は false を返す

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

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

public boolean __isset ( $name )
$name string

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

return 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()

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

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

  • setterによって定義されたプロパティ: プロパティ値を設定する
  • "on xyz" 形式のイベント: ハンドラをイベント "xyz" にアタッチする
  • "as xyz" 形式のビヘイビア: "xyz" という名前のビヘイビアをアタッチする
  • ビヘイビアのプロパティ: ビヘイビアのプロパティ値を設定する

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

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

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

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

$value mixed

プロパティ値

throws yii\base\UnknownPropertyException

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

throws 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 に設定します。

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

  • setterによって定義されたプロパティ: プロパティ値を null に設定する
  • ビヘイビアのプロパティ: プロパティ値を null に設定する

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

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

public void __unset ( $name )
$name string

プロパティ名

throws 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 の場合、このパラメーターは無視されます。

return 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は、期限切れにならないことを意味します。

return boolean

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

                protected function addValue($key, $value, $duration)
{
    return zend_shm_cache_fetch($key) === null ? $this->setValue($key, $value, $duration) : false;
}

            
addValues() protected メソッド

定義元: yii\caching\Cache::addValues()

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

デフォルトの実装では、addValue() を複数回呼び出して、値を一つずつ追加します。基礎となるキャッシュストレージが複数追加をサポートしている場合、このメソッドをオーバーライドしてその機能を活用する必要があります。

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

キーがキャッシュキーに対応し、値が格納されている値である配列。

$duration integer

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

return array

失敗したキーの配列

                protected function addValues($data, $duration)
{
    $failedKeys = [];
    foreach ($data as $key => $value) {
        if ($this->addValue($key, $value, $duration) === false) {
            $failedKeys[] = $key;
        }
    }
    return $failedKeys;
}

            
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()に渡され、ビヘイビアオブジェクトを作成するオブジェクト構成配列。
return 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 ( )
return array

ビヘイビア構成。

                public function behaviors()
{
    return [];
}

            
buildKey() public メソッド

定義元: yii\caching\Cache::buildKey()

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

指定されたキーが英数字のみを含み、32文字を超えない文字列である場合、キーは$keyPrefixで始まるプレフィックスが付けられて返されます。それ以外の場合は、指定されたキーをシリアル化し、MD5ハッシュを適用し、$keyPrefixを付与することによって、正規化されたキーが生成されます。

public string buildKey ( $key )
$key mixed

正規化されるキー

return 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

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

return 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

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

return 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 ( )
return string

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

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

            
delete() public メソッド

定義元: yii\caching\Cache::delete()

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

public boolean delete ( $key )
$key mixed

キャッシュから削除する値を識別するキー。これは単純な文字列でも、キーを表す要素で構成される複雑なデータ構造でも構いません。

return boolean

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

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

            
deleteValue() protected メソッド

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

protected boolean deleteValue ( $key )
$key string

削除する値のキー

return boolean

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

                protected function deleteValue($key)
{
    return zend_shm_cache_delete($key);
}

            
detachBehavior() public メソッド

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

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

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

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

ビヘイビアの名前。

return 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 メソッド

定義元: yii\caching\Cache::exists()

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

データが大きい場合、キャッシュから値を取得するよりも高速になる場合があります。キャッシュがこの機能をネイティブでサポートしていない場合、このメソッドはそれをシミュレートしようとしますが、取得するよりもパフォーマンスが向上することはありません。このメソッドは、キャッシュされたデータに関連付けられた依存関係(存在する場合)が変更されたかどうかは確認しないことに注意してください。したがって、get() の呼び出しが false を返す一方で、exists は true を返す可能性があります。

public boolean exists ( $key )
$key mixed

キャッシュされた値を識別するキー。これは単純な文字列でも、キーを表す要素で構成される複雑なデータ構造でも構いません。

return boolean

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

                public function exists($key)
{
    $key = $this->buildKey($key);
    $value = $this->getValue($key);
    return $value !== false;
}

            
flush() public メソッド

定義元: yii\caching\Cache::flush()

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

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

public boolean flush ( )
return boolean

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

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

            
flushValues() protected メソッド

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

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

protected boolean flushValues ( )
return boolean

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

                protected function flushValues()
{
    return zend_shm_cache_clear();
}

            
get() public メソッド

定義元: yii\caching\Cache::get()

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

public mixed get ( $key )
$key mixed

キャッシュされた値を識別するキー。これは単純な文字列でも、キーを表す要素で構成される複雑なデータ構造でも構いません。

return 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

ビヘイビアの名前

return 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 ( )
return 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()経由でフェッチされるときに、キャッシュ内の対応する値は無効になります。このパラメータは、$serializerfalseの場合、無視されます。

return 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

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

return mixed|false

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

                protected function getValue($key)
{
    $result = zend_shm_cache_fetch($key);
    return $result === null ? false : $result;
}

            
getValues() protected メソッド

定義元: yii\caching\Cache::getValues()

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

デフォルトの実装では、キャッシュされた値を1つずつ取得するためにgetValue()が複数回呼び出されます。基盤となるキャッシュストレージがmultigetをサポートしている場合、このメソッドはその機能を利用するようにオーバーライドする必要があります。

protected array getValues ( $keys )
$keys array

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

return array

キーによってインデックス付けされたキャッシュされた値のリスト

                protected function getValues($keys)
{
    $results = [];
    foreach ($keys as $key) {
        $results[$key] = $this->getValue($key);
    }
    return $results;
}

            
hasEventHandlers() public メソッド

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

指定された名前のイベントにアタッチされたハンドラがあるかどうかを示す値を返します。

public boolean hasEventHandlers ( $name )
$name string

イベント名

return 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

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

return 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()

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

プロパティが定義される条件は以下のとおりです。

  • クラスに、指定された名前に関連付けられたgetterまたはsetterメソッドがある場合(この場合、プロパティ名は大文字と小文字を区別しません)。
  • クラスに指定された名前のメンバー変数がある($checkVarsがtrueの場合)。
  • 添付されたビヘイビアに、指定された名前のプロパティがある場合($checkBehaviorsがtrueの場合)。

参照

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

プロパティ名

$checkVars boolean

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

$checkBehaviors boolean

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

return boolean

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

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

            
init() public メソッド

定義元: yii\caching\Cache::init()

オブジェクトを初期化します。

このメソッドは、オブジェクトが指定された構成で初期化された後、コンストラクタの最後に呼び出されます。

public void init ( )

                public function init()
{
    parent::init();
    $this->_igbinaryAvailable = \extension_loaded('igbinary');
}

            
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の場合、無視されます。

return 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[]

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

return 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の場合、無視されます。

return 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の場合、無視されます。

return 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[]

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

return 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の場合、無視されます。

return 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の場合、指定された名前のイベントにアタッチされたすべてのハンドラーが削除されます。

return 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

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

return 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 の場合、このパラメーターは無視されます。

return 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は、期限切れにならないことを意味します。

return boolean

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

                protected function setValue($key, $value, $duration)
{
    return zend_shm_cache_store($key, $value, $duration);
}

            
setValues() protected メソッド

定義元: yii\caching\Cache::setValues()

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

デフォルトの実装では、値を一つずつ保存するために、setValue() を複数回呼び出します。基盤となるキャッシュストレージがマルチセットをサポートしている場合、このメソッドはその機能を活用するためにオーバーライドする必要があります。

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

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

$duration integer

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

return array

失敗したキーの配列

                protected function setValues($data, $duration)
{
    $failedKeys = [];
    foreach ($data as $key => $value) {
        if ($this->setValue($key, $value, $duration) === false) {
            $failedKeys[] = $key;
        }
    }
    return $failedKeys;
}

            
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);
}