使用可能な文字列の一部の単語をアンカー タグに置き換えたい。しかし、それは私にとって問題を引き起こします。私は以下のようにしています:
$post['Post']['comment'] = 'a class href';
$post['Post']['person'] = 'a';
$post['Post']['place'] = 'class';
$post['Post']['thing'] = 'href';
$thing = "<a class='searchName' href='javascript:void(0)'>".ucfirst($post['Post']['thing'])."</a>";
$person = "<a class='searchName' href='javascript:void(0)'>".ucfirst($post['Post']['person'])."</a>";
$place = "<a class='searchName' href='javascript:void(0)'>".ucfirst($post['Post']['place'])."</a>";
$search_strings = array($person=>$post['Post']['person'],$place=>$post['Post']['place'],$thing=>$post['Post']['thing']);
$kw_to_search_for = $post['Post']['comment'];
foreach($search_strings as $key=>$v)
{
if (preg_match('~\b' . $v . '\b~i', $kw_to_search_for, $m))
{
$as[] = str_ireplace($v, $key, $kw_to_search_for);
}
}
上記のコードの出力は次のとおりです。
Array
(
[0] => **A** cl**A**ss href
[1] => a **Class** href
[2] => a class **Href**
)
しかし、私は上記のような出力を望んでいません。私の要件によると、出力は次のようになります。
Array
(
[0] => **A** class href
[1] => a **Class** href
[2] => a class **Href**
)
できるだけ早く提案してください........