フォロワー数 1

クラス yii\base\View

継承yii\base\View » yii\base\Component » yii\base\BaseObject
実装yii\base\Configurable, yii\base\DynamicContentAwareInterface
サブクラスyii\web\View
利用可能バージョン2.0
ソースコード https://github.com/yiisoft/yii2/blob/master/framework/base/View.php

Viewは、MVCパターンにおけるビューオブジェクトを表します。

Viewは、レンダリングのために一連のメソッド(例:render())を提供します。

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

公開プロパティ

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

プロパティ 説明 定義元
$behaviors yii\base\Behavior[] このコンポーネントにアタッチされているビヘイビアのリスト。 yii\base\Component
$blocks array 名前付き出力ブロックのリスト。 yii\base\View
$context yii\base\ViewContextInterface renderFile()メソッドが呼び出されているコンテキスト。 yii\base\View
$defaultExtension string デフォルトのビューファイル拡張子。 yii\base\View
$dynamicContents yii\base\DynamicContentAwareInterface[] 動的コンテンツをサポートするクラスインスタンス。 yii\base\View
$dynamicPlaceholders array プレースホルダーのリスト。 yii\base\View
$params array ビューテンプレート間で共有されるカスタムパラメーター。 yii\base\View
$renderers array|null 対応するサポートされているファイル拡張子によってインデックス付けされた、利用可能なレンダラーのリスト。 yii\base\View
$theme yii\base\Theme|array|string|null テーマオブジェクト、またはテーマオブジェクトを作成するための設定。 yii\base\View
$viewFile string|boolean 現在レンダリングされているビューファイル。 yii\base\View

公開メソッド

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

メソッド 説明 定義元
__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
addDynamicPlaceholder() 動的コンテンツのプレースホルダーを追加します。 yii\base\View
afterRender() このメソッドは、renderFile()がビューファイルをレンダリングした直後に呼び出されます。 yii\base\View
attachBehavior() このコンポーネントにビヘイビアをアタッチします。 yii\base\Component
attachBehaviors() コンポーネントにビヘイビアのリストをアタッチします。 yii\base\Component
beforeRender() このメソッドは、renderFile()がビューファイルをレンダリングする直前に呼び出されます。 yii\base\View
beginBlock() ブロックの記録を開始します。 yii\base\View
beginCache() フラグメントキャッシュを開始します。 yii\base\View
beginContent() 指定されたビューによって装飾されるコンテンツのレンダリングを開始します。 yii\base\View
beginPage() ページの先頭を示します。 yii\base\View
behaviors() このコンポーネントがビヘイビアとして動作する必要があるビヘイビアのリストを返します。 yii\base\Component
canGetProperty() プロパティを読み取ることができるかどうかを示す値を返します。 yii\base\Component
canSetProperty() プロパティを設定できるかどうかを示す値を返します。 yii\base\Component
className() このクラスの完全修飾名を返します。 yii\base\BaseObject
detachBehavior() コンポーネントからビヘイビアをデタッチします。 yii\base\Component
detachBehaviors() コンポーネントからすべてのビヘイビアをデタッチします。 yii\base\Component
endBlock() ブロックの記録を終了します。 yii\base\View
endCache() フラグメントキャッシュを終了します。 yii\base\View
endContent() コンテンツのレンダリングを終了します。 yii\base\View
endPage() ページの終了を示します。 yii\base\View
ensureBehaviors() behaviors() で宣言されたビヘイビアが、このコンポーネントに確実にアタッチされていることを確認します。 yii\base\Component
evaluateDynamicContent() 指定されたPHP文を実行します。 yii\base\View
getBehavior() 指定された名前のビヘイビアオブジェクトを返します。 yii\base\Component
getBehaviors() このコンポーネントにアタッチされているすべてのビヘイビアを返します。 yii\base\Component
getDynamicContents() 現在アクティブな動的コンテンツクラスインスタンスのリストを返します。 yii\base\View
getDynamicPlaceholders() 動的コンテンツのプレースホルダーのリストを返します。このメソッドは、コンテンツキャッシュ機能の実装に内部的に使用されます。 yii\base\View
getViewFile() yii\base\View
hasEventHandlers() 指定されたイベントにハンドラーがアタッチされているかどうかを示す値を返します。 yii\base\Component
hasMethod() メソッドが定義されているかどうかを示す値を返します。 yii\base\Component
hasProperty() このコンポーネントに対してプロパティが定義されているかどうかを示す値を返します。 yii\base\Component
init() ビューコンポーネントを初期化します。 yii\base\View
off() このコンポーネントから既存のイベントハンドラーをデタッチします。 yii\base\Component
on() イベントにイベントハンドラーをアタッチします。 yii\base\Component
popDynamicContent() 現在アクティブな動的コンテンツクラスインスタンスのリストから、最後に追加された動的コンテンツをサポートするクラスインスタンスを削除します。 yii\base\View
pushDynamicContent() 動的コンテンツをサポートするクラスインスタンスを、現在アクティブな動的コンテンツクラスインスタンスのリストの最後に追加します。 yii\base\View
render() ビューをレンダリングします。 yii\base\View
renderDynamic() 指定されたPHP文によって返された動的コンテンツをレンダリングします。 yii\base\View
renderFile() ビューファイルをレンダリングします。 yii\base\View
renderPhpFile() ビューファイルをPHPスクリプトとしてレンダリングします。 yii\base\View
setDynamicPlaceholders() 動的コンテンツのプレースホルダーのリストを設定します。このメソッドは、コンテンツキャッシュ機能の実装に内部的に使用されます。 yii\base\View
trigger() イベントをトリガーします。 yii\base\Component

保護されたメソッド

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

メソッド 説明 定義元
findViewFile() 指定されたビュー名に基づいてビューファイルを探します。 yii\base\View
getRequestedViewFile() yii\base\View

イベント

継承されたイベントを非表示

イベント 説明 定義元
EVENT_AFTER_RENDER yii\base\ViewEvent renderFile() がビューファイルをレンダリングした直後にトリガーされるイベントです。 yii\base\View
EVENT_BEFORE_RENDER yii\base\ViewEvent renderFile() がビューファイルをレンダリングする直前にトリガーされるイベントです。 yii\base\View
EVENT_BEGIN_PAGE yii\base\Event beginPage() によってトリガーされるイベントです。 yii\base\View
EVENT_END_PAGE yii\base\Event endPage() によってトリガーされるイベントです。 yii\base\View

プロパティの詳細

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

$blocks public property

名前付き出力ブロックのリストです。キーはブロック名、値は対応するブロックの内容です。beginBlock()endBlock() を使用して、ビューの小片をキャプチャできます。これらは後でこのプロパティを通じて他の場所でアクセスできます。

public array $blocks null
$context public property

renderFile()メソッドが呼び出されているコンテキスト。

$defaultExtension public property

デフォルトのビューファイル拡張子です。ビューファイル名にファイル拡張子が付いていない場合、ビューファイル名に付加されます。

public string $defaultExtension 'php'
$dynamicContents public read-only property (available since version 2.0.14)

動的コンテンツをサポートするクラスインスタンス。

$dynamicPlaceholders public property

プレースホルダーのリスト。

public array getDynamicPlaceholders ( )
public void setDynamicPlaceholders ( $placeholders )
$params public property

ビューテンプレート間で共有されるカスタムパラメーター。

public array $params = []
$renderers public property

対応するサポートされているファイル拡張子によってインデックス付けされた、使用可能なレンダラーのリストです。各レンダラーは、ビューレンダラーオブジェクト、またはレンダラーオブジェクトを作成するための構成のいずれかです。たとえば、次の構成では、SmartyとTwigの両方のビューレンダラーが有効になります。

[
    'tpl' => ['class' => 'yii\smarty\ViewRenderer'],
    'twig' => ['class' => 'yii\twig\ViewRenderer'],
]

指定されたビューファイルで使用可能なレンダラーがない場合、ビューファイルは通常のPHPとして扱われ、renderPhpFile() を介してレンダリングされます。

public array|null $renderers null
$theme public property

テーマオブジェクト、またはテーマオブジェクトを作成するための構成です。設定されていない場合、テーマが無効であることを意味します。

$viewFile public property

現在レンダリングされているビューファイルです。ビューファイルがレンダリングされていない場合はfalseです。

public string|boolean $viewFile null

メソッドの詳細

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

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

            
addDynamicPlaceholder() publicメソッド

動的コンテンツのプレースホルダーを追加します。

このメソッドは、コンテンツキャッシュ機能を実装するために内部的に使用されます。

public void addDynamicPlaceholder ( $placeholder, $statements )
$placeholder
$statements string

動的コンテンツを生成するためのPHPステートメント。

                public function addDynamicPlaceholder($placeholder, $statements)
{
    foreach ($this->cacheStack as $cache) {
        if ($cache instanceof DynamicContentAwareInterface) {
            $cache->addDynamicPlaceholder($placeholder, $statements);
        } else {
            // TODO: Remove in 2.1
            $cache->dynamicPlaceholders[$placeholder] = $statements;
        }
    }
    $this->dynamicPlaceholders[$placeholder] = $statements;
}

            
afterRender() publicメソッド

このメソッドは、renderFile()がビューファイルをレンダリングした直後に呼び出されます。

デフォルトの実装では、EVENT_AFTER_RENDER イベントをトリガーします。このメソッドをオーバーライドする場合は、最初に親の実装を呼び出すようにしてください。

public void afterRender ( $viewFile, $params, &$output )
$viewFile string

レンダリングされるビューファイル。

$params array

render() メソッドに渡されるパラメータ配列。

$output string

ビューファイルのレンダリング結果。このパラメータへの更新は、renderFile()によって返されます。

                public function afterRender($viewFile, $params, &$output)
{
    if ($this->hasEventHandlers(self::EVENT_AFTER_RENDER)) {
        $event = new ViewEvent([
            'viewFile' => $viewFile,
            'params' => $params,
        ]);
        $event->output =& $output;
        $this->trigger(self::EVENT_AFTER_RENDER, $event);
    }
}

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

            
beforeRender() publicメソッド

このメソッドは、renderFile()がビューファイルをレンダリングする直前に呼び出されます。

デフォルトの実装では、EVENT_BEFORE_RENDER イベントをトリガーします。このメソッドをオーバーライドする場合は、最初に親の実装を呼び出すようにしてください。

public boolean beforeRender ( $viewFile, $params )
$viewFile string

レンダリングするビューファイル。

$params array

render() メソッドに渡されるパラメータ配列。

戻り値 boolean

ビューファイルのレンダリングを続行するかどうか。

                public function beforeRender($viewFile, $params)
{
    $event = new ViewEvent([
        'viewFile' => $viewFile,
        'params' => $params,
    ]);
    $this->trigger(self::EVENT_BEFORE_RENDER, $event);
    return $event->isValid;
}

            
beginBlock() publicメソッド

ブロックの記録を開始します。

このメソッドは、yii\widgets\Block を開始するためのショートカットです。

public yii\widgets\Block beginBlock ( $id, $renderInPlace false )
$id string

ブロックID。

$renderInPlace boolean

ブロックの内容をその場でレンダリングするかどうか。デフォルトはfalseで、キャプチャされたブロックは表示されません。

戻り値 yii\widgets\Block

Blockウィジェットインスタンス

                public function beginBlock($id, $renderInPlace = false)
{
    return Block::begin([
        'id' => $id,
        'renderInPlace' => $renderInPlace,
        'view' => $this,
    ]);
}

            
beginCache() publicメソッド

フラグメントキャッシュを開始します。

このメソッドは、キャッシュされたコンテンツが利用可能な場合は表示します。利用できない場合は、キャッシングを開始し、endCache() の呼び出しでキャッシュを終了してコンテンツをキャッシュに保存することを期待します。フラグメントキャッシングの典型的な使用方法は次のとおりです。

if ($this->beginCache($id)) {
    // ...generate content here
    $this->endCache();
}
public boolean beginCache ( $id, $properties [] )
$id string

キャッシュするフラグメントを一意に識別するID。

$properties array

yii\widgets\FragmentCache の初期プロパティ値

戻り値 boolean

キャッシュのためにコンテンツを生成する必要があるかどうか。キャッシュされたバージョンが利用可能な場合はfalse。

                public function beginCache($id, $properties = [])
{
    $properties['id'] = $id;
    $properties['view'] = $this;
    /* @var $cache FragmentCache */
    $cache = FragmentCache::begin($properties);
    if ($cache->getCachedContent() !== false) {
        $this->endCache();
        return false;
    }
    return true;
}

            
beginContent() publicメソッド

指定されたビューによって装飾されるコンテンツのレンダリングを開始します。

このメソッドは、ネストされたレイアウトを実装するために使用できます。たとえば、レイアウトは、次のように「@app/views/layouts/base.php」のように指定された別のレイアウトファイルに埋め込むことができます。

<?php $this->beginContent('@app/views/layouts/base.php'); ?>
//...layout content here...
<?php $this->endContent(); ?>

yii\widgets\ContentDecoratorも参照してください。

public yii\widgets\ContentDecorator beginContent ( $viewFile, $params [] )
$viewFile string

このウィジェットで囲まれたコンテンツを装飾するために使用されるビューファイル。ビューファイルパスまたはパスエイリアスとして指定できます。

$params array

抽出され、装飾ビューで使用可能になる変数(name => value)。

戻り値 yii\widgets\ContentDecorator

ContentDecoratorウィジェットインスタンス

                public function beginContent($viewFile, $params = [])
{
    return ContentDecorator::begin([
        'viewFile' => $viewFile,
        'params' => $params,
        'view' => $this,
    ]);
}

            
beginPage() publicメソッド

ページの先頭を示します。

public void beginPage ( )

                public function beginPage()
{
    ob_start();
    ob_implicit_flush(false);
    $this->trigger(self::EVENT_BEGIN_PAGE);
}

            
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 [];
}

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

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

            
endBlock() publicメソッド

ブロックの記録を終了します。

public void endBlock ( )

                public function endBlock()
{
    Block::end();
}

            
endCache() publicメソッド

フラグメントキャッシュを終了します。

public void endCache ( )

                public function endCache()
{
    FragmentCache::end();
}

            
endContent() publicメソッド

コンテンツのレンダリングを終了します。

public void endContent ( )

                public function endContent()
{
    ContentDecorator::end();
}

            
endPage() publicメソッド

ページの終了を示します。

public void endPage ( )

                public function endPage()
{
    $this->trigger(self::EVENT_END_PAGE);
    ob_end_flush();
}

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

            
evaluateDynamicContent() publicメソッド

指定されたPHP文を実行します。

このメソッドは主に、動的コンテンツ機能を実装するために内部的に使用されます。

public mixed evaluateDynamicContent ( $statements )
$statements string

評価されるPHP文。

戻り値 mixed

PHP文の戻り値。

                public function evaluateDynamicContent($statements)
{
    return eval($statements);
}

            
findViewFile() protectedメソッド

指定されたビュー名に基づいてビューファイルを探します。

protected string findViewFile ( $view, $context null )
$view string

ビュー名、またはビューファイルのパスエイリアス。このパラメータの指定方法については、render()を参照してください。

$context object|null

ビューに割り当てられ、後でビュー内で$contextを介してアクセスできるコンテキスト。コンテキストがyii\base\ViewContextInterfaceを実装している場合、相対ビュー名に対応するビューファイルの場所を特定するためにも使用できます。

戻り値 string

ビューファイルのパス。ファイルが存在しない可能性があります。

例外 yii\base\InvalidCallException

相対ビュー名が指定されているのに、対応するビューファイルを決定するためのアクティブなコンテキストがない場合。

                protected function findViewFile($view, $context = null)
{
    if (strncmp($view, '@', 1) === 0) {
        // e.g. "@app/views/main"
        $file = Yii::getAlias($view);
    } elseif (strncmp($view, '//', 2) === 0) {
        // e.g. "//layouts/main"
        $file = Yii::$app->getViewPath() . DIRECTORY_SEPARATOR . ltrim($view, '/');
    } elseif (strncmp($view, '/', 1) === 0) {
        // e.g. "/site/index"
        if (Yii::$app->controller !== null) {
            $file = Yii::$app->controller->module->getViewPath() . DIRECTORY_SEPARATOR . ltrim($view, '/');
        } else {
            throw new InvalidCallException("Unable to locate view file for view '$view': no active controller.");
        }
    } elseif ($context instanceof ViewContextInterface) {
        $file = $context->getViewPath() . DIRECTORY_SEPARATOR . $view;
    } elseif (($currentViewFile = $this->getRequestedViewFile()) !== false) {
        $file = dirname($currentViewFile) . DIRECTORY_SEPARATOR . $view;
    } else {
        throw new InvalidCallException("Unable to resolve view file for view '$view': no active view context.");
    }
    if (pathinfo($file, PATHINFO_EXTENSION) !== '') {
        return $file;
    }
    $path = $file . '.' . $this->defaultExtension;
    if ($this->defaultExtension !== 'php' && !is_file($path)) {
        $path = $file . '.php';
    }
    return $path;
}

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

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

現在アクティブな動的コンテンツクラスインスタンスのリストを返します。

public yii\base\DynamicContentAwareInterface[] getDynamicContents ( )
戻り値 yii\base\DynamicContentAwareInterface[]

動的コンテンツをサポートするクラスインスタンス。

                public function getDynamicContents()
{
    return $this->cacheStack;
}

            
getDynamicPlaceholders() publicメソッド

動的コンテンツのプレースホルダーのリストを返します。このメソッドは、コンテンツキャッシュ機能の実装に内部的に使用されます。

public array getDynamicPlaceholders ( )
戻り値 array

プレースホルダーのリスト。

                public function getDynamicPlaceholders()
{
    return $this->dynamicPlaceholders;
}

            
getRequestedViewFile() protectedメソッド (バージョン2.0.16から利用可能)

protected string|boolean getRequestedViewFile ( )
戻り値 string|boolean

現在レンダリングされている要求されたビュー。ビューファイルがレンダリングされていない場合はfalse。

                protected function getRequestedViewFile()
{
    return empty($this->_viewFiles) ? false : end($this->_viewFiles)['requested'];
}

            
getViewFile() publicメソッド

public string|boolean getViewFile ( )
戻り値 string|boolean

現在レンダリングされているビューファイルです。ビューファイルがレンダリングされていない場合はfalseです。

                public function getViewFile()
{
    return empty($this->_viewFiles) ? false : end($this->_viewFiles)['resolved'];
}

            
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();
    if (is_array($this->theme)) {
        if (!isset($this->theme['class'])) {
            $this->theme['class'] = 'yii\base\Theme';
        }
        $this->theme = Yii::createObject($this->theme);
    } elseif (is_string($this->theme)) {
        $this->theme = Yii::createObject($this->theme);
    }
}

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

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

            
popDynamicContent() public メソッド (バージョン 2.0.14 以降で使用可能)

現在アクティブな動的コンテンツクラスインスタンスのリストから、最後に追加された動的コンテンツをサポートするクラスインスタンスを削除します。

public void popDynamicContent ( )

                public function popDynamicContent()
{
    array_pop($this->cacheStack);
}

            
pushDynamicContent() public メソッド (バージョン 2.0.14 以降で使用可能)

動的コンテンツをサポートするクラスインスタンスを、現在アクティブな動的コンテンツクラスインスタンスのリストの最後に追加します。

public void pushDynamicContent ( yii\base\DynamicContentAwareInterface $instance )
$instance yii\base\DynamicContentAwareInterface

動的コンテンツをサポートするクラスインスタンス。

                public function pushDynamicContent(DynamicContentAwareInterface $instance)
{
    $this->cacheStack[] = $instance;
}

            
render() public メソッド

ビューをレンダリングします。

レンダリングするビューは、以下のいずれかの形式で指定できます。

  • パスエイリアス (例: "@app/views/site/index")。
  • アプリケーション内の絶対パス (例: "//site/index"): ビュー名が二重スラッシュで始まる場合。実際のビューファイルは、アプリケーションの ビューパス で検索されます。
  • 現在のモジュール内の絶対パス (例: "/site/index"): ビュー名が単一スラッシュで始まる場合。実際のビューファイルは、現在のモジュールビューパス で検索されます。
  • 相対ビュー (例: "index"): ビュー名が @ または / で始まらない場合。対応するビューファイルは、ビューの $contextビューパス で検索されます。$context が指定されていない場合、現在レンダリングされているビューを含むディレクトリで検索されます (つまり、別のビュー内でビューをレンダリングする場合に発生します)。

参照: renderFile().

public string render ( $view, $params = [], $context null )
$view string

ビュー名。

$params array

抽出され、ビューファイルで使用可能になるパラメータ (名前と値のペア)。

$context object|null

ビューに割り当てられ、後でビュー内で$contextを介してアクセスできるコンテキスト。コンテキストがyii\base\ViewContextInterfaceを実装している場合、相対ビュー名に対応するビューファイルの場所を特定するためにも使用できます。

戻り値 string

レンダリング結果

例外 yii\base\ViewNotFoundException

ビューファイルが存在しない場合。

例外 yii\base\InvalidCallException

ビューを解決できない場合。

                public function render($view, $params = [], $context = null)
{
    $viewFile = $this->findViewFile($view, $context);
    return $this->renderFile($viewFile, $params, $context);
}

            
renderDynamic() public メソッド

指定されたPHP文によって返された動的コンテンツをレンダリングします。

このメソッドは、コンテンツの一部 (動的コンテンツ と呼ばれる) をキャッシュしないようにする必要がある場合、コンテンツキャッシング (フラグメントキャッシングとページキャッシング) と共に主に使用されます。動的コンテンツは、いくつかのPHP文によって返される必要があります。

参照: https://github.com/yiisoft/yii2/issues/17673.

public string renderDynamic ( $statements )
$statements string

動的コンテンツを生成するためのPHPステートメント。

戻り値 string

動的コンテンツのプレースホルダー、または現在アクティブなコンテンツキャッシュがない場合の動的コンテンツ。

registerJS() や registerJSFile() などのレイアウトを間接的に変更するほとんどのメソッドは、動的レンダリングでは機能しないことに注意してください。

                public function renderDynamic($statements)
{
    if (!empty($this->cacheStack)) {
        $n = count($this->dynamicPlaceholders);
        $placeholder = "<![CDATA[YII-DYNAMIC-$n]]>";
        $this->addDynamicPlaceholder($placeholder, $statements);
        return $placeholder;
    }
    return $this->evaluateDynamicContent($statements);
}

            
renderFile() public メソッド

ビューファイルをレンダリングします。

$theme が有効になっている (null ではない) 場合、利用可能な限り、ビューファイルのテーマ付きバージョンをレンダリングしようとします。

このメソッドは、ビューファイルのローカライズのためにyii\helpers\FileHelper::localize() を呼び出します。

レンダラー が有効になっている場合(nullではない場合)、このメソッドはビューファイルのレンダリングにレンダラーを使用します。そうでない場合は、ビューファイルを通常のPHPファイルとしてインクルードし、その出力をキャプチャして文字列として返します。

public string renderFile ( $viewFile, $params = [], $context null )
$viewFile string

ビューファイル。絶対ファイルパスまたはそのエイリアスのいずれかです。

$params array

抽出され、ビューファイルで使用可能になるパラメータ (名前と値のペア)。

$context object|null

ビューをレンダリングするためにビューが使用するコンテキスト。nullの場合、既存の$context が使用されます。

戻り値 string

レンダリング結果

例外 yii\base\ViewNotFoundException

ビューファイルが存在しない場合

                public function renderFile($viewFile, $params = [], $context = null)
{
    $viewFile = $requestedFile = Yii::getAlias($viewFile);
    if ($this->theme !== null) {
        $viewFile = $this->theme->applyTo($viewFile);
    }
    if (is_file($viewFile)) {
        $viewFile = FileHelper::localize($viewFile);
    } else {
        throw new ViewNotFoundException("The view file does not exist: $viewFile");
    }
    $oldContext = $this->context;
    if ($context !== null) {
        $this->context = $context;
    }
    $output = '';
    $this->_viewFiles[] = [
        'resolved' => $viewFile,
        'requested' => $requestedFile
    ];
    if ($this->beforeRender($viewFile, $params)) {
        Yii::debug("Rendering view file: $viewFile", __METHOD__);
        $ext = pathinfo($viewFile, PATHINFO_EXTENSION);
        if (isset($this->renderers[$ext])) {
            if (is_array($this->renderers[$ext]) || is_string($this->renderers[$ext])) {
                $this->renderers[$ext] = Yii::createObject($this->renderers[$ext]);
            }
            /* @var $renderer ViewRenderer */
            $renderer = $this->renderers[$ext];
            $output = $renderer->render($this, $viewFile, $params);
        } else {
            $output = $this->renderPhpFile($viewFile, $params);
        }
        $this->afterRender($viewFile, $params, $output);
    }
    array_pop($this->_viewFiles);
    $this->context = $oldContext;
    return $output;
}

            
renderPhpFile() public メソッド

ビューファイルをPHPスクリプトとしてレンダリングします。

このメソッドは、ビューファイルをPHPスクリプトとして扱い、ファイルをインクルードします。指定されたパラメータを抽出し、ビューファイルで使用できるようにします。このメソッドは、インクルードされたビューファイルの出力をキャプチャし、文字列として返します。

このメソッドは、主にビューレンダラーまたはrenderFile()によって呼び出されるべきです。

public string renderPhpFile ( $_file_, $_params_ = [] )
$_file_ string

ビューファイル。

$_params_ array

抽出され、ビューファイルで使用可能になるパラメータ (名前と値のペア)。

戻り値 string

レンダリング結果

例外 例外

                public function renderPhpFile($_file_, $_params_ = [])
{
    $_obInitialLevel_ = ob_get_level();
    ob_start();
    ob_implicit_flush(false);
    extract($_params_, EXTR_OVERWRITE);
    try {
        require $_file_;
        return ob_get_clean();
    } catch (\Exception $e) {
        while (ob_get_level() > $_obInitialLevel_) {
            if (!@ob_end_clean()) {
                ob_clean();
            }
        }
        throw $e;
    } catch (\Throwable $e) {
        while (ob_get_level() > $_obInitialLevel_) {
            if (!@ob_end_clean()) {
                ob_clean();
            }
        }
        throw $e;
    }
}

            
setDynamicPlaceholders() public メソッド

動的コンテンツのプレースホルダーのリストを設定します。このメソッドは、コンテンツキャッシュ機能の実装に内部的に使用されます。

public void setDynamicPlaceholders ( $placeholders )
$placeholders array

プレースホルダーのリスト。

                public function setDynamicPlaceholders($placeholders)
{
    $this->dynamicPlaceholders = $placeholders;
}

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

            

イベントの詳細

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

EVENT_AFTER_RENDER yii\base\ViewEvent型のイベント

renderFile() がビューファイルをレンダリングした直後にトリガーされるイベントです。

EVENT_BEFORE_RENDER yii\base\ViewEvent型のイベント

renderFile() がビューファイルをレンダリングする直前にトリガーされるイベントです。

EVENT_BEGIN_PAGE yii\base\Event型のイベント

beginPage() によってトリガーされるイベントです。

EVENT_END_PAGE yii\base\Event型のイベント

endPage() によってトリガーされるイベントです。