PHP 関数の基本「ユーザー定義関数」〜未経験の為のPHPプログラミング講座〜

前回の「組み込み(ビルトイン)関数」に引き続き今回も関数です。
今回の関数は「ユーザー定義関数」を紹介します。
「組み込み(ビルトイン)関数」に関しては以下の記事を参考にしてください。
ユーザー定義関数とは?
「ユーザー定義関数」とはあらかじめ用意されている「組み込み(ビルトイン)関数」とは異なり、プログラマが独自に定義することのできる関数です。
同じ処理を複数箇所に記述するより、一箇所にまとめてプログラミングする方がメンテナンス性が向上します。
ユーザー定義関数の作成方法
「ユーザー定義関数」は「function( 引数 ){〜処理〜}」の記述方法で作成します。
消費税を計算する関数を例に挙げてみます。
ユーザー定義関数を利用してみる
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <?php // 関数を定義 function taxin( $price ){ $tax = 1.1; return $price * $tax; } // 関数を利用 echo taxin(1000); // 何回でも利用できる echo taxin(500); ?> //結果 1100 //結果 550 |
ユーザー定義関数「taxin」を定義し、引数「$price」で金額が与えられます。
関数内では与えられた金額に「$tax(1.1)」を掛け、「return」によって値を返します。
関数から帰ってくる値を「戻り値」と言います。
関数の利用は関数名 taxin() を記述し、()内に引数として金額を与えます。関数は与えられた引数を処理し返します。
echo taxin(1000);
では1000が与えられ関数内で計算され1100が返ってきます。
echo taxin(500);
では500が与えられ関数内で計算され550が返ってきます。
ユーザー定義関数の記述場所
関数の記述場所は、必ずしも呼び出す前に記述する必要があるわけではありません。
変数などは出力する前に値を代入する必要がありましたが、関数の場合は、関数を呼び出すコードの下に記述していても問題なく動作します。
これはサーバーサイドでのプログラムの読み込む順番によるもので、関数として宣言(function …)されているものは出力系のプログラムよりも先に読み込まれるためです。
1 2 3 4 5 6 7 8 9 10 | <?php echo math(1,2); function math( $i, $n ){ echo $i + $n; } // 結果 3 |
まとめ
今回は短い処理ですが、処理数の多い関数の使い回しは非常に便利です。
また、関数を修正するだけで全ての処理の内容を変更できます。
- Panic Nova 購入から1年が過ぎライセンスの更新時期の注意点
![Panic Nova 購入から1年が過ぎライセンスの更新時期の注意点 Panic Nova 購入から1年が過ぎライセンスの更新時期の注意点]()
- CrowdWorks いつの間にか「プロクラウドワーカー」になっていた
![CrowdWorks いつの間にか「プロクラウドワーカー」になっていた CrowdWorks いつの間にか「プロクラウドワーカー」になっていた]()
- Shopify APIを利用して在庫管理を行うShopify APIで在庫を自動更新する仕組みを調査・実装してみた
![Shopify APIを利用して在庫管理を行うShopify APIで在庫を自動更新する仕組みを調査・実装してみた Shopify APIを利用して在庫管理を行うShopify APIで在庫を自動更新する仕組みを調査・実装してみた]()
- PHPフレームワーク「Laravel」ディレクティブ-繰り返し処理(ループ処理)-
![PHPフレームワーク「Laravel」ディレクティブ-繰り返し処理(ループ処理)- PHPフレームワーク「Laravel」ディレクティブ-繰り返し処理(ループ処理)-]()
- プログラマー になる為に必要な プログラミング以外 の知識・スキル
![プログラマー になる為に必要な プログラミング以外 の知識・スキル プログラマー になる為に必要な プログラミング以外 の知識・スキル]()
- XSERVERにSSHを利用してLaravel環境を構築する
![XSERVERにSSHを利用してLaravel環境を構築する XSERVERにSSHを利用してLaravel環境を構築する]()
- CrowdWorks 提案後、受注に繋がりました。提案〜契約までの流れを解説
![CrowdWorks 提案後、受注に繋がりました。提案〜契約までの流れを解説 CrowdWorks 提案後、受注に繋がりました。提案〜契約までの流れを解説]()
- macOS Monterey にアップデート後、composerやhomebrewでenv: php: No such file or directoryが出る
![macOS Monterey にアップデート後、composerやhomebrewでenv: php: No such file or directoryが出る macOS Monterey にアップデート後、composerやhomebrewでenv: php: No such file or directoryが出る]()
- PHP フレームワーク Laravel ディレクティブ – ループ変数 $loop –
![PHP フレームワーク Laravel ディレクティブ – ループ変数 $loop – PHP フレームワーク Laravel ディレクティブ – ループ変数 $loop –]()
S.E->Weekly Ranking;
S.E->プロフィール;














![Apple AirPods Pro[MWP22J/A]の偽物(コピー品)を正規品と徹底比較 Apple AirPods Pro[MWP22J/A]の偽物(コピー品)を正規品と徹底比較](https://www.programming-se.com/wp-content/uploads/2020/07/スクリーンショット-2020-07-13-0.00.32-300x176.jpg)





