PHP を使用する場合、プログラマーは関数を呼び出す必要がある状況によく遭遇します。組み込み関数を使用するかカスタム関数を使用するかに関係なく、関数を呼び出す主な目的は、特定のタスクを実行して結果を返すことです。 PHP 関数では、戻り結果は、関数がコードとどのように対話し、プログラム内で役割を果たすかを決定するため、非常に重要な概念です。この記事では、PHP 関数における「直接戻りなし」の概念について説明します。
PHP では、関数は「return」キーワードを使用するだけで非常に簡単に結果を返すことができます。たとえば、次のコードは文字列を返します:
function myFunction() { $result = "This is my string."; return $result; }
この例では、関数「myFunction」は「$result」という変数を作成し、関数の最後に「return」を使用してそれを返します。文字列の値「これは私の文字列です。」
ただし、すべての PHP 関数が「return」を使用して結果を直接返すわけではありません。場合によっては、関数が他のメソッドを通じて値を返す必要がある場合があります。これは、「直接戻りなし」と呼ばれます。
この状況の例をいくつか見てみましょう。
関数は特別なタスクを実行する必要があるため、結果を直接返すことができない場合があります。この時点での一般的な方法は、関数に渡される引数に結果を格納することです。たとえば、次のコードは文字列を大文字に変換しますが、「return」を使用して結果を返しません。
function toUpperCase(&$str) { $str = strtoupper($str); }
この例では、関数「toUpperCase」は「&」記号を使用して変数「$」を渡します。 str" を関数に渡します。これは、変数が値ではなく参照によって渡されることを意味します。これにより、関数は渡された引数の値を変更できるようになり、その変更は関数の呼び出し後に外部に反映されます。
この関数は、PHP の組み込み "strtoupper" 関数を使用して文字列を大文字に変換し、渡されたパラメーター "$str" に結果を格納します。最終的には、パラメータの元の値が永続的に変更されます。
PHP 関数は、値を返すだけでなく、特定のタスクを実行する必要がある場合があります。たとえば、関数では HTML マークアップの出力、ファイルの生成、データベース操作の実行などが必要になる場合があります。この場合、関数は通常、「return」を使用するのではなく、「echo」または「print」ステートメントを使用して結果を直接出力します。
たとえば、以下は 2 つの数値間のすべての整数を出力する単純な関数です:
function printRange($start, $end) { for ($i = $start; $i <= $end; $i++) { echo $i . " "; } }
この例では、関数 "printRange" は "for" ループを使用して変数 "All" を出力します。 "$start" と "$end" の間の整数。印刷は「echo」ステートメントを使用して行われ、結果をページに直接出力します。
関数が特定のタスクを実行し、結果をグローバル変数に保存する必要がある状況もあります。 PHP では、グローバル変数はすべてのスクリプトと関数に公開され、プログラム内のどこでも使用できる変数です。関数はグローバル変数を使用して、「return」を使用せずに結果を保存できます。
たとえば、次のコードは、PHP 関数でグローバル変数を使用して結果を保存する方法を示しています。
function myFunction() { global $result; $result = "This is my string."; } $result = ""; myFunction(); echo $result;
この例では、関数 "myFunction" が "global" Word という名前のキーを宣言しています。 、グローバル変数「$result」を参照するために使用されます。次に、関数は変数に値を割り当てて終了します。
関数呼び出しが終了したら、この変数を使用できるようになります。この例では、出力は文字列「This is my string」になります。ここでは「return」ステートメントが使用されていないことに注意してください。
概要
PHP 関数では、結果を返すことは非常に重要な概念です。 「return」ステートメントは通常、関数が特定のタスクを実行して結果を返す場合に使用されます。ただし、すべての関数が結果を直接返せるわけではありません。場合によっては、関数は値を返し、特定のタスク (グローバル変数の変更、結果の直接出力など) を実行するために他の手法を使用する必要があります。これらのテクニックをマスターすると、PHP アプリケーションを作成する際に、より柔軟かつ強力になることができます。
以上がPHP 関数における「直接戻りなし」の概念について説明します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。