PHP関数

黄舟
リリース: 2023-03-04 06:50:01
オリジナル
2516 人が閲覧しました

開発プロセスでは、特定の操作を繰り返したり、同じコードを繰り返し入力する必要があることがよくあります。これにより、コードの冗長性が増し、後のメンテナンスがより面倒になります。関数を使用すると、これらの問題は簡単に解決されます。

1. 関数の定義と呼び出し

関数とは、繰り返し使用する関数を独立したコードブロックに記述し、必要に応じて個別に呼び出すものです。関数を作成するための基本的な構文は次のとおりです:

function fun_name($str1, $str2...$strn) {

fun_body

}

このうち、function はカスタム関数を宣言するときに使用する必要があるキーワードです。 。 fun_name はカスタム関数の名前です。 $str1、$str2...$strn は関数のパラメータです。 fun_body は、カスタム関数の本体と、関数を実装するコード部分です。

たとえば、次の関数は数値の 2 乗を計算します:

<?php
    //声明自定义函数    function example($num) {
        retrun $num * $num;    //返回计算后的结果
    }    echo example(10);    //调用函数
    ?>
ログイン後にコピー

結果は次のようになります: 100


2. 関数間で関数を渡す

関数を呼び出すときは、関数にパラメーターを渡す必要があります。および渡されるパラメータ これらは実パラメータと呼ばれますが、関数によって定義されたパラメータは仮パラメータです。パラメーターの受け渡し方法には、値による受け渡し、参照による受け渡し、およびデフォルトのパラメーターが含まれます。

2.1 値渡し

値渡しとは、実パラメータの値を対応する仮パラメータにコピーすることであり、関数内の演算ポインタは仮パラメータに対して動作し、演算結果は実パラメータには影響しません。つまり、関数が戻った後、実際のパラメータの値は変更されません。

例:

<?php
    //定义一个自定义函数    function sp($m) {
        $m = 100;
        //输出形参        echo $m . "/;
    }
    $m = 5;
    sp($m);    //传递值,将$m的值传递给形参$m    echo $m;  //输出实参
    ?>
ログイン後にコピー

実行結果: 100/5。


2.2 参照渡し

参照渡しとは、実パラメータのメモリアドレスを仮パラメータに渡すことです。このとき、関数内の操作が実パラメータに影響し、関数が戻った後に実パラメータの値が変化します。参照渡しするには、値を渡すときに & 記号を追加するだけです。

例:

<?php
    //定义一个自定义函数    function sp(&$m) {
         $m = 100;
         //输出形参         echo $m . "/";
    }
    $m = 5;
    sp($m);        //传递值    echo $m;      //输出实参
    ?>
ログイン後にコピー

実行結果: 100/100。


2.3 デフォルトパラメータ

デフォルトパラメータとは、仮パラメータで指定されたデフォルト値を指します。

例:

<?php
    //定义一个自定义函数    function sp($m = 100)  {
        //输出形参        echo $m . "/";
    }
    sp(10);    //传值
    sp();       //未传值,输出默认值
    ?>
ログイン後にコピー

実行結果: 10/100。


3. 関数からの戻り値

通常、関数はキーワード return を使用して呼び出し元に戻り値を渡します。

return ステートメントは 1 つのパラメーターのみを返すことができます。つまり、1 つの値のみを返すことができ、一度に複数の値を返すことはできません。複数の値を返す必要がある場合は、配列を使用して戻り値を配列に格納して返すことができます。

上記は PHP 関数の内容です。さらに関連する内容については、PHP 中国語 Web サイト (www.php.cn) をご覧ください。


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート