誠にお手数ですが、アドバイスをお願いいたします。
くじびきBBSのようなものを作成しています。
投稿された文章内の「1」「2」といった数字を、$pattern[1][0]や$pattern[2][0]に置き換えたい場合は、どうすればいいでしょうか。
$pattern[x]はシャッフルしています。
最終的に、文章内の「数」のところに、ランダムで単語を当て嵌め、表示するのが目的です。
試したもの
php
1 2//単語のパターン 3$pattern = array( 4['飴','チョコ'], 5['書類','ネクタイ'], 6['晴れ','曇り'], 7); 8shuffle($pattern); 9 10$max = count($pattern); 11for($i = 0;$i < $max; $pattern){ 12 shuffle($pattern[$i]); 13 $i++; 14} 15 16//置換元(※投稿された文章) 17$comment = '子供が持っているのは「1」で、大人が持っているのは「2」です'; 18 19/*追記:$commentは掲示板に投稿された文章を想定しています。 20$comment = "子供が「1」を舐めていたよ"; 21$comment = "明日の天気は「3」かな"; 22など色々なパターンの$commentを置き換えたいです。*/ 23 24 25//$commentの「数字」を $pattern[数字][0] に置き換えたい 26$result = preg_replace("/([0-9+])/",'$pattern[$1][0]',$comment); 27 28var_dump($result);
結果(失敗)
php
1string(112) "子供が持っているのは「$pattern[1][0]」で、大人が持っているのは「$pattern[2][0]」です"
・子供が持っているのは「チョコ」で、大人が持っているのは「書類」です
等の結果を出したいです。
文字列の$pattern[1][0]や$pattern[2][0]を、「チョコ」や「書類」にするには、どうすればいいでしょうか?
文字型の変換など調べたのですが、うまくいかないため、解決策を教えていだたけますと助かります。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/20 07:50
2020/10/20 12:32 編集
2020/10/20 14:23