たとえば、このような関数がある場合、関数は常にいくつかの値を返す必要があります。
function foo() {
return 'hello world';
}
それを呼び出して変数に割り当てると、
/*
* in the below example the function will be called once
* and the function's return value will be assigned to $a variable
* now $a will contain value 'hello world';
*/
$a = foo();
変数を出力しようとすると、変数$aに含まれる値が出力されるだけで、関数が再度呼び出されることはありません。これは、 $a「helloworld」が含まれているためです。
$a変数を複数回エコーする。
echo $a;
echo $a;
echo $a;
値をhello world3回出力するだけで、関数を3回呼び出すことはありません。
ただし、たとえば関数を複数回呼び出す場合。
$a = foo();
$a = foo();
今あなたの質問に来ています。
これにより、関数が複数回呼び出されます。値は、関数呼び出しによって返された前の値から上書きされます。したがって、変数を関数に割り当てることはfunction_name()を意味します。作業は1回だけで、変数は後で使用するためにデータをリサイクルするか、function_name()を実行します。実際に2回作業しますか?
私はこれを完全に詳細に説明したと思います。
Is it better practice to assign variables or just directly call the function each time it needs to be used?
コンテキストや使用する関数によって異なりますが、最終的には、たとえば、関数から常にいくつかの値を返してみてください。
a)関数がいくつかの値をフェッチしてフォーマットすることを目的としている場合は、配列、文字列、またはその他のデータ型として返す必要があります。
b)関数がフェッチではなく何らかの実行を行うことを意図している場合はreturn true|false、操作が成功したかどうかを示すようなブール値を返すことができます。