a-blog cms PHP API Reference

SafeIframeRegexp
in package

FinalYes

iframe の src を許可ホストに限定するための PCRE を生成・判定する。

HTMLPurifier の URI.SafeIframeRegexp はホスト文字列をそのまま正規表現に流すため、 preg_quote によるメタ文字の安全化、プロトコル相対 (//) / http / https の吸収、 ポート以外での区切り偽装(userinfo @ など)の排除を一箇所に集約する。

build() と matches() が同一の正規表現ロジックを共有することで、 SafeIframe フィルタの判定(URI.SafeIframeRegexp)と post-transform でのホスト解決(IframePolicyTransform)の結果が一致することを保証する。

Table of Contents

Methods

build()  : string|null
許可ホストの配列から URI.SafeIframeRegexp 用の PCRE を生成する。
matches()  : bool
単一ホストに対して URL がマッチするか判定する。
hostPattern()  : string|null
ホスト名を正規表現の部分パターンに変換する。

Methods

build()

許可ホストの配列から URI.SafeIframeRegexp 用の PCRE を生成する。

public static build(array<string|int, string> $hosts) : string|null
Parameters
$hosts : array<string|int, string>

許可ホスト名の配列

Return values
string|null

有効なホストが無い場合は null(iframe を許可しないシグナル)

matches()

単一ホストに対して URL がマッチするか判定する。

public static matches(string $url, string $host) : bool

build() と同一の正規表現を用いるため、SafeIframe フィルタの通過可否と一致する。

Parameters
$url : string

判定対象の URL(iframe の src)

$host : string

許可ホスト名

Return values
bool

hostPattern()

ホスト名を正規表現の部分パターンに変換する。

private static hostPattern(string $host) : string|null
Parameters
$host : string
Return values
string|null

空文字なら null


        
On this page

Search results