現在、転職のために「PHP」を学習しているのでそこで学んだことを書いています。
間違い等もあると思いますがご了承ください。
####mb_strlenとstrlenの違い
mb_strlen() = 引数に指定した文字列の長さを取得する。
strlen() = 引数に指定した文字列の長さをバイト数で取得する。
実際にコードを書いてみると下記のような結果になります。
$a = "おーい、お茶";
$b = "abcdef";
echo mb_strlen($a); // 出力:6
echo strlen($a); // 出力:18
echo mb_strlen($b); // 出力:6
echo strlen($b); // 出力:6
strlen(#array1)が18を出力するのは「エンコーディング」によるものだそうです。(日本語は2バイトだと思っていました。)
エンコーディングについてはこちらのサイトに書いてありましたので下記サイトを参考にしてみてください。
参考:https://www.morisawa.co.jp/culture/dictionary/1902
まだまだ知らないことばかりで「バイト数」を調べるのはどんな時に使うのかわからないので、
mb_strlen()を使う機会の方が多いのかなと思いました。