从PHP中的函数调用返回多个项目

时间:2011-06-02 08:27:20

标签: php

是否可以从函数中返回多个项目 - 并将它们分配给单个语句中的多个变量 - 就像可以在某些语言中完成的那样(例如Python)?

例如,我可以这样:

a, b, c,d = foo();

3 个答案:

答案 0 :(得分:8)

函数不能返回多个值,但返回数组可以获得类似的结果。

<?php
function small_numbers()
{
    return array (0, 1, 2);
}
list ($zero, $one, $two) = small_numbers();
?>

请参阅http://php.net/manual/en/functions.returning-values.php

答案 1 :(得分:1)

如果你在函数中返回一个数组然后使用list构造,那么Tou可以这样做:

function foo(){
    ...
    return array('a', 'b', 'c');
}

list($a, $b, $c) = foo();

答案 2 :(得分:1)

是的,这是可能的。您可以从函数返回一个数组,并使用list构造将数组元素分配给一个语句中的变量:

function fun() {
        return array(1,2,3);
}

// this will assign 1 to $a, 2 to $b and 3 to $c.
list($a,$b,$c) = fun();

See it