数字盤の問題解決!

コメント欄にてid:tek_koc さんが助言下さったので、ひとまず問題解決!
(あと、id:yorutrainさんもTwitterから助言もらいました、ありがとう)

// そこに地雷があれば地雷マークを設定する
$c= "*";

の部分で、爆弾がある位置をtrueから*に変更してしまっているため、正常にカウントできていませんでした。

なので、やや無理矢理ですが、爆弾があったら$cをインクリメントする、という部分の条件式を、
if($board[$x + $dx][$y + $dy] === true)
から
if($board[$x + $dx][$y + $dy] === true || $board[$x + $dx][$y + $dy] === "*")
に変更すればうまく動くかなと思います。

id:tek_koc

この指摘がまさにビンゴでした。ありがとうございましたー!
マスの下、右下、右、右上はちゃんと数えられるけど、上と左側がうまくいかないって時に気づくべきだった。
観察力と構造の分析力をもっと鍛えるしか…

動いてます。

さて次は面を開ける事にするぞ。(どう表現したらいいのあの動作)
また難しそうだ。