PHP では、アンパサンド (&) 記号を使用して、値ではなく参照によって変数を渡すことができます。これにより、関数またはメソッド内で元の変数を変更できるようになります。 PHP 変数を参照によって渡すには、主に 2 つの方法があります:
PHP では、関数/メソッドの宣言でアンパサンド記号 (&) を使用して、参照によって変数を渡すことができます。更新された説明は次のとおりです:
関数/メソッド宣言で & 記号を使用して参照変数を渡すには、関数/メソッド定義のパラメーター名の前に & 記号を含める必要があります。これは、パラメータが参照によって渡され、元の変数の変更が可能になることを意味します。
これは例です:
リーリー上記のコードでは、関数modifyValueは、変数名の前にアンパサンドが付いたパラメータ$variableを受け入れます。これは、参照によって渡されることを示します。関数内で、$変数の値に 10 を加算して変更します。 $myVariable をパラメータとして関数を呼び出すと、元の変数が参照によって渡されるため、関数はその値を直接変更できます。したがって、 echo #$myVariable には、更新された値 15 が表示されます。
関数/メソッドの宣言でアンパサンドを使用することは、変数を参照渡しすることを示す直接的かつ明確な方法です。これは、関数またはメソッド内の元の変数を特に変更する場合に便利です。アンパサンド記号を使用して関数/メソッドに変数を渡します
リーリー 上記のコードでは、関数modifyValueはパラメータ#$variableを受け入れますが、関数定義では&記号は使用されていません。関数を呼び出すときに、&$myVariable をパラメーターとして渡すことは、$myVariable が参照によって渡される必要があることを示します。 ただし、PHP では、関数またはメソッドに変数を渡すときに & 記号を使用しても、実際には参照渡しになりません。上記の例では、$myVariable は参照ではなく値によって渡されるため、modifyValue 関数によって変更されません。この場合、& 記号は構文エラーであるため、参照による変数の受け渡しには使用しないでください。
変数を参照によって渡すには、関数/メソッド宣言で & 記号を使用して、説明した最初の方法を使用する必要があります。これにより、変数が参照によって明示的に渡されることが保証され、関数またはメソッド内で元の変数を変更できるようになります。
###結論は###
PHP では、関数/メソッド宣言で & 記号を使用するか、関数/メソッドに変数を渡すときに、参照によって変数を渡すことができます。どちらの方法でも、元の変数を変更できるという同じ結果が得られます。どの方法を使用するかは、コーディング スタイルと好みによって異なります。意図しない副作用を回避し、コードを明確にするために、参照による変数の受け渡しは注意して使用する必要があることに注意することが重要です。以上がPHP変数を参照によって渡す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。