• ベストアンサー

PHPで文字列内に指定した文字が何文字あるか

PHPで $test = "●19-■20-■21-▼22-■23-●18"; だとして、 この$test内に■が何個含まれるかを表示させたいのですが、 どのようにしたらよいでしょうか。 eregやin_array、countなどを使用したけど、 どうしてもできませんでした。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

こんな感じでよいのでは? <? mb_internal_encoding(適当な文字ード); $test = "●19-■20-■21-▼22-■23-●18"; print mb_strlen($test) - mb_strlen(str_replace("■","",$test)); ?>

hukazuo
質問者

お礼

ありがとうございました。 出来ました^-^

その他の回答 (1)

  • mpx
  • ベストアンサー率71% (149/209)
回答No.2

>> eregやin_array、countなどを使用したけど、 指定の関数ではありませんが、以下ではだめですか? <?php $test = "●19-■20-■21-▼22-■23-●18"; print preg_match_all ( '/■/',$test,$dummy); ?>

hukazuo
質問者

お礼

ありがとうございました。 これもまた、できました。

関連するQ&A