0 フォロワー

クラス yii\caching\WinCache

継承yii\caching\WinCache » 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/WinCache.php

WinCache は、アプリケーションコンポーネントの観点から Windows Cache キャッシュを提供します。

このアプリケーションコンポーネントを使用するには、WinCache PHP 拡張機能をロードする必要があります。また、php.ini ファイルで "wincache.ucenabled" を "On" に設定する必要があることにも注意してください。

WinCache でサポートされている一般的なキャッシュ操作については、yii\caching\Cache マニュアルを参照してください。

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

公開プロパティ

継承されたプロパティを非表示

プロパティ 説明 定義元
$behaviors yii\base\Behavior[] このコンポーネントにアタッチされたビヘイビアのリスト。 yii\base\Component
$defaultDuration 整数 キャッシュエントリが期限切れになるまでのデフォルトの秒数。 yii\caching\Cache
$keyPrefix 文字列 キャッシュストレージ全体でグローバルに一意になるように、すべてのキャッシュキーにプレフィックスとして付加される文字列。 yii\caching\Cache
$serializer 配列|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\WinCache
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\WinCache
addValues() キャッシュに複数のキーと値のペアを追加します。 yii\caching\WinCache
deleteValue() キャッシュから指定されたキーを持つ値を削除します。これは、親クラスで宣言されたメソッドの実装です。 yii\caching\WinCache
flushValues() キャッシュからすべての値を削除します。 yii\caching\WinCache
getValue() 指定されたキーを使用して、キャッシュから値を取得します。 yii\caching\WinCache
getValues() 指定されたキーを使用して、キャッシュから複数の値を取得します。 yii\caching\WinCache
setValue() キーで識別される値をキャッシュに格納します。 yii\caching\WinCache
setValues() キャッシュに複数のキーと値のペアを格納します。 yii\caching\WinCache

メソッドの詳細

継承されたメソッドを非表示

__call() 公開メソッド

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

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

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

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

public mixed __call ( $name, $params )
$name 文字列

メソッド名

$params 配列

メソッドのパラメータ

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 配列

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

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

            
__get() public メソッド

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

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

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

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

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

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

public mixed __get ( $name )
$name 文字列

$name

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

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

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

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

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

public boolean __isset ( $name )
$name 文字列

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

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

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

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

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

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

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

public void __set ( $name, $value )
$name 文字列

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

$value mixed

プロパティ値

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

yii\base\UnknownPropertyException

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

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

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

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

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

public void __unset ( $name )
$name 文字列

$name

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

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

                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 整数

キャッシュされた値が有効期限切れになる秒数。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 文字列

$key

$value mixed

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

$duration 整数

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

return boolean

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

                protected function addValue($key, $value, $duration)
{
    return wincache_ucache_add($key, $value, $duration);
}

            
addValues() protected メソッド

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

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

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

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

$duration 整数

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

return 配列

失敗したキーの配列

                protected function addValues($data, $duration)
{
    return wincache_ucache_add($data, null, $duration);
}

            
attachBehavior() public メソッド

定義箇所: yii\base\Component::attachBehavior()

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

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

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

public yii\base\Behavior attachBehavior ( $name, $behavior )
$name 文字列

ビヘイビアの名前。

$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 配列

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

                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 配列

ビヘイビアの構成。

                public function behaviors()
{
    return [];
}

            
buildKey() public メソッド

定義箇所: yii\caching\Cache::buildKey()

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

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

public string buildKey ( $key )
$key mixed

正規化されるキー

return 文字列

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

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

プロパティが読み取り可能かどうかを示す値を返します。

プロパティは、以下の場合に読み取り可能です。

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

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

public boolean canGetProperty ( $name, $checkVars true, $checkBehaviors true )
$name 文字列

$name

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

プロパティが設定可能かどうかを示す値を返します。

プロパティは、以下の場合に書き込み可能です。

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

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

public boolean canSetProperty ( $name, $checkVars true, $checkBehaviors true )
$name 文字列

$name

$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 文字列

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

                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 文字列

削除される値のキー

return boolean

削除中にエラーが発生しない場合

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

            
detachBehavior() public メソッド

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

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

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

public yii\base\Behavior|null detachBehavior ( $name )
$name 文字列

ビヘイビアの名前。

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

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

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

public boolean exists ( $key )
$key mixed

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

return boolean

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

                public function exists($key)
{
    $key = $this->buildKey($key);
    return wincache_ucache_exists($key);
}

            
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 wincache_ucache_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 文字列

ビヘイビアの名前

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 string|boolean getValue ( $key )
$key 文字列

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

return string|boolean

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

                protected function getValue($key)
{
    return wincache_ucache_get($key);
}

            
getValues() protected メソッド

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

protected array getValues ( $keys )
$keys 配列

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

return 配列

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

                protected function getValues($keys)
{
    return wincache_ucache_get($keys);
}

            
hasEventHandlers() public メソッド

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

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

public boolean hasEventHandlers ( $name )
$name 文字列

イベント名

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 文字列

$name

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

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

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

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

参照

public boolean hasProperty ( $name, $checkVars true, $checkBehaviors true )
$name 文字列

$name

$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 配列

キャッシュされるアイテムを、キーと値のペアとして指定します。

$duration 整数

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

$dependency yii\caching\Dependency|null

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

return 配列

失敗したキーの配列

                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 文字列[]

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

return 配列

指定されたキーに対応するキャッシュされた値のリスト。配列は (キー, 値) ペアで返されます。値がキャッシュされていないか期限切れの場合、対応する配列の値は 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 配列

キャッシュされるアイテムを、キーと値のペアとして指定します。

$duration integer|null

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

$dependency yii\caching\Dependency|null

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

return 配列

失敗したキーの配列

                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 配列

キャッシュされるアイテムを、キーと値のペアとして指定します。

$duration 整数

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

$dependency yii\caching\Dependency|null

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

return 配列

失敗したキーの配列

                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 文字列[]

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

return 配列

指定されたキーに対応するキャッシュされた値のリスト。配列は (キー, 値) ペアで返されます。値がキャッシュされていないか期限切れの場合、対応する配列の値は 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 配列

キャッシュされるアイテムを、キーと値のペアとして指定します。

$duration integer|null

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

$dependency yii\caching\Dependency|null

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

return 配列

失敗したキーの配列

                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 文字列

イベント名

$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 文字列

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

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

            
offsetGet() public メソッド

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

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

このメソッドは、インタフェース ArrayAccess で必須です。

public mixed offsetGet ( $key )
$key 文字列

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

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 文字列

$key

$value mixed

キャッシュする値

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

            
offsetUnset() public メソッド

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

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

public void offsetUnset ( $key )
$key 文字列

削除される値のキー

                #[\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 文字列

イベント名

$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 文字列

$key

$value mixed

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

$duration 整数

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

return boolean

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

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

            
setValues() protected メソッド

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

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

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

$duration 整数

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

return 配列

失敗したキーの配列

                protected function setValues($data, $duration)
{
    return wincache_ucache_set($data, null, $duration);
}

            
trigger() public メソッド

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

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

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

public void trigger ( $name, yii\base\Event $event null )
$name 文字列

イベント名

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