首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

自訂函數回傳值錯誤:echo 與 return 差異導致輸出異常

     編輯:PHP 相關知識

錯誤程式碼

<?php
function myfunc($argument) {
    echo $argument + 10;  // 錯誤:直接輸出而非回傳
}
$variable = 10;
echo "myfunc($variable) = " . myfunc($variable);
?>

輸出結果

20myfunc(10) = 

20 由函數內 echo 先輸出,函數回傳 NULL,字串串接後輸出 myfunc(10) = 。

正確寫法:使用 return

<?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 7+)

<?php
declare(strict_types=1);
function add(int $a, int $b): int {
    return $a + $b;
}
echo add(10, 5); // 15
// add('10', 5); // TypeError
?>
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved