レンタルサーバでPHPのsystem関数やexec関数が使用できずにエラーが出力される
2024/01/10
レンタルサーバ上でPHPのsystem関数を実行しようとすると「Fatal error: Uncaught Error: Call to undefined function system()」というエラーが出力された。exec関数も同様のエラー内容となった。調査したところphp.iniの設定により制限がかかっていた。
phpinfo()で確認
disable_functionsという項目にsystemとexecが設定されており、こちらが原因で当該関数は利用できない模様。
disable_functions
リファレンスによると当該設定を行うことで指定した関数を無効にすることができるとのこと。
その他
PHPがセーフモードで動作している場合、exec関数が使えなくなる場合もある模様。今回は前述の設定の問題だったけど、このようなケースもある点を覚えておく。
所感
今回はsystem関数でmysqldumpを実行しようと思ったが、当該環境ではphp.iniの変更が行えないため断念。以前にメモした形でバックアップを取る形とした。
関連記事
-
-
PHPでjpg / png画像をAVIF形式の画像に変換する方法
PHPでjpg / png画像をAVIF形式の画像に変換しサーバに保存したい。W ...
-
-
PHPで一括出力ではなく、ひとつずつ順次に出力する方法
PHPで重たい処理とかをしている際に、途中報告みたいな形で順次出力させる方法のメ ...
-
-
PHPで配列のキーの最大値を取得する方法
配列のキーに整数値が入っていて、その中から最大値を取得したいケースがあった。調べ ...
-
-
PHPでデータベースを取り扱いやすくなるORMライブラリ「idiorm」の利用方法
Codeigniterでデータベースを取り扱う際にクエリビルダクラスを用いて可読 ...
-
-
PHPでdo-while(0)構文を利用する際のメリット
あるソースコード上にdo-whileという構文が使われていた。見たことのない構文 ...
