PHPで「Call to undefined function mb_str_split()」エラーの対応方法
PHPにて「Fatal error: Uncaught Error: Call to undefined function mb_str_split() in xxx.php」というエラーログが見受けられた。以下に原因及びmb_str_split()関数の代替手段についてのメモ。
原因
mb_str_split()関数はPHP7.4以上から利用可能となるが、エラーが発生した環境は7.3系だったため発生した。
代替手段
if( !function_exists('mb_str_split')){
function mb_str_split( $string = '', $length = 1 , $encoding = 'utf-8' ){
if(!empty($string)){
$split = array();
$mb_strlen = mb_strlen($string,$encoding);
for($pi = 0; $pi < $mb_strlen; $pi += $length){
$substr = mb_substr($string, $pi, $length, $encoding);
if( !empty($substr)){
$split[] = $substr;
}
}
}
return $split;
}
}
マニュアルページのコメントとほぼ同じだけど第3引数が未設定の場合うまく動かなかったため、デフォルトをUTF-8に指定した。
関連記事
-
-
PHPにてメインドメイン⇔サブドメイン間でCookie及びSESSIONを共有する方法
PHPにてメインドメインのサイトで発行したCookie及びSESSIONをサブド ...
-
-
PHPにて「Fatal error: Uncaught Exception ~~」エラーの対応方法
PHPにてDatetimeクラスの呼び出し時にタイムスタンプを指定しようとすると ...
-
-
PHPでXML形式データをオブジェクト・JSON・連想配列に変換する方法
先日バニラJavaScriptでXML形式データの取り扱いとJSON形式への変換 ...
-
-
Stripeでキャンセル処理を行う際に「$config must be a string ~」エラーが出る場合の対応方法
Stripeにて先日メモした内容でキャンセル(返金)処理をしようとしたところ1件 ...
-
-
PHPにて特定の処理にかかった時間とメモリ使用量を測定する方法
PHPにて特定の処理にかかった時間とメモリ使用量を測定したい。以下にソースコード ...