| | ユーザフォーラムで議論/質問 | マニュアル検索 | ハイライト | ハイライトオフ | ポータル | php spot |
関数の引数引数のリストにより関数へ情報を渡すことができます。 このリストは、カンマで区切られた式のリストです。 引数の評価は、左から右の順番で行われます。 PHP は、値渡し(デフォルト)、 参照渡し、 デフォルト引数値 をサポートしています。また、 可変長引数リスト もサポートしてます。 func_num_args(), func_get_arg(), func_get_args() に関する関数リファレンスを 参照ください。
例1 Passing arrays to functions
<?php参照渡しで引数を作成するデフォルトで、関数の引数は値で渡されます。(このため、関数の内部で 引数の値を変更しても関数の外側では値は変化しません。)関数がその引 数を修正できるようにするには、その引数を参照渡しとする必要があり ます。 関数の引数を常に参照渡しとしたい場合には、関数定義において アンパサンド(&) を引数名の前に付加することができます。
例2 Passing function parameters by reference
<?phpデフォルト引数値関数は、スカラー引数に関して次のように C++ スタイルのデフォルト値を 定義することができます。
例3 関数におけるデフォルトパラメータの使用法
<?php上の例の出力は以下となります。 Making a cup of cappuccino. Making a cup of . Making a cup of espresso.
PHPでは、配列および特殊な型
例4 スカラー型以外をデフォルト値として使用する
<?phpデフォルト値は、定数式である必要があり、 (例えば) 変数やクラスのメンバーであってはなりません。 引数のデフォルト値を使用する際には、デフォルト値を有する引数はデ フォルト値がない引数の右側に全てある必要があることに注意して下さ い。そうでない場合、意図したような動作が行われません。次の簡単な コードを見てみましょう。
例5 関数の引数のデフォルト値の 間違った使用法
<?php上の例の出力は以下となります。 Warning: Missing argument 2 in call to makeyogurt() in /usr/local/etc/httpd/htdocs/phptest/functest.html on line 41 Making a bowl of raspberry . ここで、上の例を次のコードと比べてみましょう。
例6 関数の引数のデフォルト値の 正しい使用法
<?php上の例の出力は以下となります。 Making a bowl of acidophilus raspberry.
可変長引数リストPHP は、可変長引数をユーザー定義関数でサポートしています。 可変長引数の使用法は非常に簡単で、 func_num_args(), func_get_arg(), func_get_args() 関数を使用します。 可変長引数に関して特別な構文は必要としません。 引数リストは従来と同様に関数定義で明示的に指定することができ、 動作も従来と変わりません。 |
|
各種マニュアル:
PHPマニュアル |
PEARマニュアル |
Smarty(英語)マニュアル |
PHP-GTKマニュアル |
「関数の引数」をGoogle検索
|