テキストで特定の文字列を太字にしようとしています。私は自分のphpブックを調べてオンラインで調べましたが、問題を解決する解決策はありませんでした. 変数$mapnameと$post_title変更は、次の例のように、特定の文字を置き換えるために正常に機能している while ループ内にあるためです。
$data_p = "SELECT * FROM posts WHERE verified='yes' ORDER BY (posvotes - negvotes) DESC $max";
$exec_p = $mysqli->query($data_p);
while($row = $exec_p->fetch_object())
{
$post_id = $row->post_id;
$maps = "SELECT name FROM maps WHERE id='$post_id'";
$getmaps = $mysqli->query($maps);
$mapname = $getmaps->fetch_object();
$post_title = preg_replace('/(Free )/',"<b>\\0</b>", $post_title);
しかし、文字列を置き換えようとすると
$post_title = str_replace($mapname,'<b>'.$mapname.'</b>', $post_title);
出力がまったく得られません。私が間違っていることについてのアイデアはありますか? を無効にしstr_replaceて変数を var_dump すると、常に正しい変数が取得されます。
解決策を求めて Web を閲覧しましたが、str_replace機能はマニュアルに従って動作するはずです。