私はこれを言うことができる文字列を持っています:
$string="Hi! [num:0] with [num:1]";
そして、このような配列:
$array[0]=array('name'=>"na","id"=>22);
$array[1]=array('name'=>"nam","id"=>19);
今、この文字列を次のように置き換えようとするとpreg_replace()
:
$string=preg_replace('#\!\s+\[num:(\d+)\]#ie','.$array[\1]["name"]',$string);
置換でこれを実行しようとしているのは、パターン [num:x] を検索し、それをキー 'x' の対応する配列内の名前に置き換えることです
最初の試合では完璧に機能しますが、2 番目の試合ではまったく機能しません。つまり、この後、私が得る出力は次のとおりです。
$string="Hi! na with [num:1]";
私が欲しいものは次のとおりです:
$string="Hi! na with nam";
これでどのような変更を加える必要がありますか?