【PHP】下らねぇ質問はここに書き込みやがれpart14
■ このスレッドは過去ログ倉庫に格納されています
0411nobodyさん
2005/12/28(水) 20:46:46ID:???$s = 'xx<0>x<3><2>x';
$a = array('A', 'B', 'C', 'D');
これを、<0> を $a[0] で置き換える、<1> を $a[1] で置き換える、.... ということをしたいです。
今はこうしています。
for ($i = 0; $i < count($a); $i++) {
$pat = '/<' . $i . '>/';
$s = preg_replace($pat, $m[i], $s);
}
しかし、これだと配列の長さが長くなるほどループの回数が増えます。
できれば、preg_replace()を1回だけ呼び出すだけにしたいのですが、できますでしょうか。
preg_replace_callback() を使えばできるのかと思いましたが、コールバック関数に $a を渡すことができないため、できなさそうです。
どなたか教えてください。
■ このスレッドは過去ログ倉庫に格納されています