エラー解消:Fatal error: Call to undefined function spl_autoload_register

spl_phpinfo_title.gif

Smarty3を導入しようと思い、インストールして利用しようとしたところ「Fatal error: Call to undefined function spl_autoload_register()…」というエラーに遭遇。

解決法ですが、PHPの拡張モジュールで「spl.so」と「simplexml.so」を無効にしていたことによるエラーであることが分かりました。

「spl.so」「simplexml.so」を有効にする

この2つのモジュールを有効にする方法ですが、PHPの初期設定ファイル(php.ini)、あるいは自動的に読み込まれる設定ファイル(extension.iniなど)でコメントされている部分を外して、Apacheを再起動、あるいは設定を再読み込みしてください。

; extension=spl.so ←「;」を外す
; extension=simplexml.so ←「;」を外す

保存して、Apacheを再起動しましょう。

# /etc/init.d/httpd restart (またはreload)

phpinfo() で確認

起動できたら適当なPHPファイルに「phpinfo()」を書いてアップロードし、ブラウザでアクセスして以下の部分が表示されているかどうか確認してください。

spl_phpinfo.png

表示されれば spl_autoload_register() 関数が利用できるようになっているはずです。

このページをシェアする

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

2012-03-08