<?php
function myfunc($argument) {
echo $argument + 10; // 錯誤:直接輸出而非回傳
}
$variable = 10;
echo "myfunc($variable) = " . myfunc($variable);
?>
20myfunc(10) =
20 由函數內 echo 先輸出,函數回傳 NULL,字串串接後輸出 myfunc(10) = 。
<?php
function myfunc($argument) {
return $argument + 10; // 回傳運算結果
}
$variable = 10;
echo "myfunc($variable) = " . myfunc($variable);
// 輸出:myfunc(10) = 20
?>
echo / print:輸出至輸出緩衝區,**不回傳值**(print 回傳 1)。return:將值回傳給呼叫者,**不輸出**。return 或 return; 不帶值,預設回傳 NULL。<?php
declare(strict_types=1);
function add(int $a, int $b): int {
return $a + $b;
}
echo add(10, 5); // 15
// add('10', 5); // TypeError
?>