是否可以在同一个PHP函数中返回2个结果?一个是数组,另一个是整数。有人可以举个例子吗?
答案 0 :(得分:4)
function functest() {
return array(1, "two");
}
list($first,$second) = functest();
答案 1 :(得分:1)
没有什么可以阻止你从函数中返回你喜欢的任何类型。您可以返回包含多个键的字典,或混合对象类型的数组,或其他任何内容。你喜欢什么。
$arr = array();
$arr[] = $some_object;
$arr[] = 3;
$arr["a_string"] = "foo";
return $arr;
答案 2 :(得分:1)
你可以选择模拟多个返回值(前两个,只是将多个值包装成一个):
array
:return array($myInt, $myArr);
(请参阅例如parse_url()
。)return new MyIntAndArrayWrapper($myInt, $myArr);
function myFunc(&$myIntRetVal) { ... return $myArr; }
(参见例如preg_match(..., &$matches)
。)答案 3 :(得分:0)
这个怎么样?
function myfunction() {
//Calculate first result
$arrayresult=...
//Calculate second result
$intresult=...
//Move in with each other . don't be shy!
return array($arrayresult,$intresult)
}
和其他代码
$tmp=myfunction();
$arrayresult=$tmp[0];
$intresult=$tmp[1];
答案 4 :(得分:0)