将数组从函数拆分为变量PHP

时间:2018-01-14 16:30:12

标签: php mysql function variables

问题:从函数中我得到两个值,只有两个。我将值填入数组并返回数组。 然后我尝试将这两个值分配给两个不同的变量,以便稍后使用。

print_r我可以看到值 - 它们是正确的,所以我的sql没问题。 但我无法将值拆分为两个变量。救命啊!

相关代码如下: 功能:

$Data = getdatastigning($stignr1); 

这里我从sql语句填充数组:

$dataArray = array();

$res = $stmt->fetch();

$dataArray[] = $res;

return $dataArray;

这里使用的数组包括函数:

$Data = getdatastigning($stignr1);   //function to get hight and length

foreach ($Data as $name){
   print_r($name) . "<br/>";
}

正如我所说print_r显示价值完美。但我无法找到拆分阵列。

我尝试过类似的事情:

$hight = $Data[0];
$length = $Dat[1);

但那不是那种方式。

2 个答案:

答案 0 :(得分:0)

看看list()构造:

list($hight, $length) = getdatastigning($stignr1);

数组元素将分配给变量$hight$length

答案 1 :(得分:0)

从技术上讲,fetch()已经返回一个对象(取决于)或 fetchAll()返回一个数组,因此你将一个数组($ res)存储在另一个数组($ dataArray)中。 / p>

你需要做的就是从你的函数返回$ res,然后在你的foreach()里面,使用list()

list($hight, $length) = $Data;

或者,在没有辅助变量的情况下使其更容易:

list($hight,$length) = getdatastigning($stignr1);