勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

レンタルサーバでPHPのsystem関数やexec関数が使用できずにエラーが出力される

   2024/01/10  PHP

レンタルサーバ上で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

  関連記事

PHPバージョンが古くjson_decodeが使えない際の対応方法(Services_JSON)
PHPバージョンが古くjson_decodeが使えない際の対応方法(Services_JSON)

PHPのバージョンが古くてjson_decodeが使えないという状況があった。ま ...

PHPとStripeで定額課金(サブスクリプション)実装する方法
PHPとStripeで定額課金(サブスクリプション)実装する方法

PHPとStripeで1ヶ月ごとに500円でサイト内のサービスを使い放題、といっ ...

PHPにて「Fatal error: Uncaught Exception ~~」エラーの対応方法
PHPにて「Fatal error: Uncaught Exception ~~」エラーの対応方法

PHPにてDatetimeクラスの呼び出し時にタイムスタンプを指定しようとすると ...

formにGoogle reCAPTCHA v3を組み込み、PHPでスコア判定する方法
formにGoogle reCAPTCHA v3を組み込み、PHPでスコア判定する方法

だいぶ前にGoogle reCAPTCHA v2をformに組み込むという記事を ...

PHPで配列内から重複を削除する
PHPで配列内から重複を削除する

やりたかった事はそのまま、配列内から重複を削除したかった。 ■参考サイト htt ...