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

PHP 自定義函數返回多個值:利用陣列封裝實現

     編輯:PHP 相關知識

原理

PHP 函數 return 僅能返回單一值,但該值可以是陣列/對象,從而實現「返回多個值」的效果。

代碼示例

<?php
function results(string $string): array {
    $result = [];
    $result[] = $string;                    // 原字符串
    $result[] = strtoupper($string);        // 全大寫
    $result[] = strtolower($string);        // 全小寫
    $result[] = ucwords($string);           // 首字母大寫
    return $result;
}

$multi = results('The quick brown fox jump over the lazy dog');
print_r($multi);

輸出結果

Array
(
    [0] => The quick brown fox jump over the lazy dog
    [1] => THE QUICK BROWN FOX JUMP OVER THE LAZY DOG
    [2] => the quick brown fox jump over the lazy dog
    [3] => The Quick Brown Fox Jump Over The Lazy Dog
)

進階:關聯陣列語義化

function results(string $string): array {
    return [
        'original' => $string,
        'upper'    => strtoupper($string),
        'lower'    => strtolower($string),
        'title'    => ucwords($string),
    ];
}

$r = results('hello world');
echo $r['upper']; // HELLO WORLD

其他常見模式

  • 返回對象:定義 DTO 類,屬性承載多值,適合結構固定場景。
  • 引用參數:function foo(&$a, &$b) { $a=1; $b=2; } 直接修改外部變量(不推薦,降低可讀性)。
  • 生成器:function gen() { yield 1; yield 2; } 逐個產出值,適合大數據集。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved