PHPでその関数が定義されているかどうか調べる 〜 function_exists

WordPressプラグインを作っていて、他のテーマやプラグインの関数を利用していたときに(それ自体がry)、そのプラグインやテーマが有効化されていたときしか使えません。
万が一、無効化してしまった場合は、そんな関数存在しないよ、というエラーになります。

そこで次のように関数が存在するかどうか調べて条件分岐させてみました。

if (function_exists(‘memberLevel’)) { $member_level = memberLevel();//テーマfunction.php内に記述している関数 }

これで、関数が存在していれば、if文中の処理を実行します。逆に存在してなければ、if文中の処理を実行しないので、エラーになりません。

というわけで、こういったコードに関数ことも少しずつ書いていきたいと思います。

この記事を書いた人

脇村 隆

Web制作に携わって24年。商工会や自治体など公的機関のWebサイト制作・運用を14年にわたり支援してきました。目的の整理から、WordPressでの構築、公開後の運用、AIを使った業務の効率化まで、一人の担当者として一貫してお手伝いします。
横浜・あざみ野を拠点に活動しています。