迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > PHP >

如何创建具有多个返回值的 PHP 函数

作者:迹忆客 最近更新:2023/03/14 浏览次数:

PHP 函数是一个可重复使用的语句块,它使我们可以返回简单的字符串,数组或 JSON 对象。但是不可能有一个以上的返回值。尽管可以使用数组,但是可以创建条件语句以返回动态变量或使用生成器*(对于 PHP 5.5 及更高版本)*。

PHP array 返回多个值

funtion arrayFunc(){
    $var1 = "return 1";
    $var2 = "return 2";
    
    return array($var1, $var2);
}

在应用中:

$result = arrayFunc();
var_dump($result);
//output: array(2) { [0]=> string(8) "return 1" [1]=> string(8) "return 2" }

上面的函数可以具有数组形式的多个返回值,可以使用以下命令进行访问:

$result = arrayFunc();
echo $result[0]; // return 1
echo $result[1]; // return 2

从 PHP 7.1 开始,列表有了一个名为 destructuring 的新函数。这意味着可以执行以下操作:

$array = ['dog', 'cat', 'horse', 'fish'];
[$q, $w, $e, $r] = $array;

echo $q; // output: dog
echo $w; // output: cat

在函数中应用如下所示:

function descructingFunction(){
    return ['A', 'sample', 'descructing', 'function'];
}
[$a, $b, $c, $d] = descructingFunction();

echo $a; //output: A
echo $d; // output: function

带条件动态返回的 PHP 函数

function condFunc($x = true){
    $ret1 = "One";
    $ret2 = "Two";
    
    if($x == true){
        return $ret1;
    }else{
        return $ret2;
    }
}

在应用中:

echo condFunc(true);
//output: One

通过采用这种方法,它不需要返回多个值。因此,函数将处理条件以过滤所需的正确值。

PHP 数组与条件动态返回值的结合

稍微修改函数可以选择返回数组或动态返回值。

例:

function combination($x = true){
    $ret1 = "One";
    $ret2 = "Two";
    
    if($x === true){
        return $ret2;
    }
    if($x == "both"){
        return array($ret1, $ret2);
    }   
}

echo combination(); //output: Two
var_dump(combination("both")) //output: array(2) { [0]=> string(8) "return 1" [1]=> string(8) "return 2" }

使用这种方法将使函数更加灵活。

PHP generatoryield 多个值

生成器函数没有返回值,而是根据需要的值而 yield。它返回一个可以迭代的对象。

例:

function multipleValues(){
    yield "return 1";
    yield "return 2";
}

$return = multipleValues();
foreach($return as $ret){
    echo $ret; //$ret first value is "return 1" then "return 2"
}

注意生成器的关键字是 yield。它就像函数语句中的 return 一样,但是它并不停止执行并返回,而是为代码循环提供了值。

注意当使用 yield 作为表达式时,必须用括号括起来。

例:

$generator = (yield $test);

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 MySQL 中创建一个函数

发布时间:2023/05/09 浏览次数:180 分类:MySQL

本篇文章介绍了如何在 MySQL 中创建函数。 它首先解释语法,然后使用示例表创建一个函数。在 MySQL 中创建一个函数

在 MySQL 中查找具有特定列名的表

发布时间:2023/05/08 浏览次数:137 分类:MySQL

本篇文章介绍如何从 MySQL 中具有特定列名的模式中查找表。MySQL 中的模式 数据库/模式指定逻辑限制,包括表名、字段、数据类型以及这些实体之间的连接

MySQL 创建只读用户

发布时间:2023/05/08 浏览次数:154 分类:MySQL

本文主要讨论如何在MySQL中创建只读用户。 您需要创建一个只能以只读模式访问数据库的用户。在 MySQL 中创建一个只读用户 要在 MySQL 中创建只读用户,请在终端或命令提示符下使用以下命令以

在 C 中创建格式化字符串

发布时间:2023/05/06 浏览次数:68 分类:C语言

这是一篇关于在 C 编程语言中格式化字符串的紧凑文章。本文讨论如何使用 C 语言格式化字符串,就像我们在 printf() 函数中所做的那样。

在 HTML 中创建下载链接

发布时间:2023/05/06 浏览次数:140 分类:HTML

本文介绍如何在 HTML 中创建下载链接。使用 download 属性在 HTML 中创建下载链接.。我们可以使用 HTML 锚元素内的下载属性来创建下载链接。

在 HTML 中创建一个可滚动的 Div

发布时间:2023/05/06 浏览次数:54 分类:HTML

本篇文章介绍如何使 HTML div 可滚动。本文将介绍在 HTML 中使 div 可滚动的方法。 我们将探索垂直和水平滚动,并通过示例查看它们的实现。

在 HTML 中创建货币输入

发布时间:2023/05/05 浏览次数:108 分类:HTML

本文将教我们在 HTML 中创建货币输入。用户将学习将普通的 HTML <input> 字段转换为货币输入字段。 我们将使用 HTML 和 jQuery 来实现我们的目标。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便