PHP関数
PHPの真の力は、その機能にあります。
PHPには1000を超える組み込み関数があり、さらに独自のカスタム関数を作成できます。
PHP組み込み関数
PHPには、特定のタスクを実行するためにスクリプト内から直接呼び出すことができる1000を超える組み込み関数があります。
PHP 組み込み関数の完全な概要については、PHPリファレンスをご覧ください。
PHP ユーザー定義関数
組み込みのPHP関数に加えて、独自の関数を作成することができます。
- 関数は、プログラム内で繰り返し使用できるステートメントのブロックです。
- ページの読み込み時に関数が自動的に実行されることはありません。
- 関数は、関数の呼び出しによって実行されます。
PHPでユーザー定義関数を作成する
ユーザー定義関数宣言は単語で始まりますfunction
:
構文
注:関数名は文字またはアンダースコアで始まる必要があります。関数名は大文字と小文字を区別しません。
ヒント:関数の機能を反映した名前を関数に付けてください。
以下の例では、「writeMsg()」という名前の関数を作成します。左中括弧 ( { ) は関数コードの開始を示し、右中括弧 ( } ) は関数の終わりを示します。関数は「Hello world!」を出力します。関数を呼び出すには、その名前に続けて括弧 () を記述します。
PHP関数の引数
情報は、引数を介して関数に渡すことができます。引数は変数と同じです。
引数は、関数名の後の括弧内に指定します。コンマで区切るだけで、必要な数の引数を追加できます。
次の例には、1つの引数($fname)を持つ関数があります。familyName() 関数が呼び出されると、名前 (Janiなど)も渡されます。この名前は関数内で使用され、いくつかの異なる名を出力しますが、姓は同じです。
例
次の例には、2つの引数($fnameと$year)を持つ関数があります。
例
PHPは緩やかに型付けされた言語です。
上記の例では、変数のデータ型をPHPに伝える必要がないことに注意してください。
PHPは、その値に応じて、データ型を変数に自動的に関連付けます。データ型は厳密には設定されていないため、整数に文字列を追加するなどの操作をエラーなしで行うことができます。
PHP7では、型宣言が追加されました。これにより、関数を宣言するときに期待されるデータ型を指定するオプションが提供され、strict
データ型が一致しない場合、「致命的なエラー」がスローされます。
次の例では、strict
使用せずに数値と文字列の両方を関数に送信しようとしています。:
例
strict
を指定するにはdeclare(strict_types=1);
とします。これは、PHPファイルの最初の行にある必要があります。
次の例では、数値と文字列の両方を関数に送信しようとしていますが、ここではstrict
宣言を追加します。:
例
strict
宣言は、物事を意図した方法で使用することを強制します。
PHPデフォルトの引数値
次の例は、デフォルトパラメータの使用方法を示しています。関数setHeight()を引数なしで呼び出すと、デフォルト値が引数として取られます。
例
PHP関数 - 戻り値
関数が値を返せるようにするには、return
文を使用します。:
例
PHP戻り型宣言
PHP7は、return
文の型宣言もサポートしています。関数引数の型宣言と同様に、厳密な要件を有効にすることで、型の不一致で「致命的なエラー」がスローされます。
関数returnの型を宣言するには、関数を宣言するときに、コロン (:
) とその型を開始波括弧 ({
)の直前に追加する。
次の例では、関数returnの型を指定しています。
例
引数の型とは異なる戻り値の型を指定できますが、戻り値が正しい型であることを確認してください。
例
参照による引数の受け渡し
PHPでは、通常、引数は値で渡されます。つまり、値のコピーが関数で使用され、関数に渡された変数は変更できません。
関数の引数が参照によって渡される場合、引数を変更すると、渡された変数も変更されます。関数の引数を参照にするには、&
演算子が使用されます:
例
変数を更新するには、参照渡し引数を使用します。
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。