0

preg_replace1 つのパターンと、すべて異なる置換の配列で使用したいと考えています。つまり、一致が発生するたびに、replacements 配列を反復して置換したいと考えています。

これを行う方法はありますか?

使用してみpreg_replace_callbackました-コールバックは一致の配列を受け入れますが、1つの文字列のみを返す必要があります-どの一致を置き換えるかを知る方法はありません.

また、paramを使用してコールバック関数を渡そうとしましたcount-毎回0で、preg_replaceが実行された後、一致の総数が通知されます。

4

3 に答える 3

1

行に沿って何かを試してください:

foreach ($replaceArray as $replace)
{
    $subject = preg_replace($pattern, $replace, $subject, 1);
}

置換配列をループし、一度に 1 つだけ置換します。

于 2013-10-22T23:33:36.963 に答える