windows環境でPHP Fatal error: Uncaught Error: Call to undefined function mb_convert系エラーが発生した場合の対処法

windows環境でPHP Fatal error:  Uncaught Error: Call to undefined function mb_convert系エラーが発生した場合の対処法

windows環境にインストールしたphpでmb_convert系使用時に「PHP Fatal error: Uncaught Error: Call to undefined function mb_convert_xxx」が発生した場合の原因と対処法

環境

  • OS windows10 pro 64bit
  • php 7.4.5

エラー全文

mb_convert_kanaを使用時に発生。

<?php
// 半角に変換
echo mb_convert_kana("テスト", "k");

エラー内容

PHP Fatal error:  Uncaught Error: Call to undefined function mb_convert_kana()

原因

「ext」フォルダにある拡張機能である「php_mbstring.dll」が、php.iniの設定で読み込まれていない

対処法

php.iniに記述されている以下の箇所を編集します。
※自分の「ext」フォルダは「C:\php-7.4.5-Win32-vc15-x64」配下に存在します。

; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
;extension_dir = "./"
; On windows:
;extension_dir = "ext"

<編集>
;コメントアウトを外して、extフォルダを絶対PATHで記述
extension_dir = "C:\php-7.4.5-Win32-vc15-x64\ext" 

以下もコメントアウトを外します。

;extension=mbstring

<編集>
extension=mbstring

extension=php_mbstring.dll ← としても大丈夫でした

webサーバーを再起動します。自分は「apache」を使用しているので、「apache」を再起動すればエラーは解消されます。