function fun1();
function &fun1();
What is the difference between these??
If you put an ampersand before your function name, the function will return a reference to a variable instead of the value.
Returning by reference is useful when you want to use a function to find to which variable a reference should be bound. Do not use return-by-reference to increase performance. The engine will automatically optimize this on its own. Only return references when you have a valid technical reason to do so.
From the PHP Manual on Returning References.
The difference is how the return value is returned: Without &
the return value is returned by value and with &
the return value is returned by reference.
The latter implies that you need to use a variable in the return
statement as you can only reference variables.
精彩评论