问题:从函数中我得到两个值,只有两个。我将值填入数组并返回数组。 然后我尝试将这两个值分配给两个不同的变量,以便稍后使用。
在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);
但那不是那种方式。
答案 0 :(得分:0)
答案 1 :(得分:0)
从技术上讲,fetch()已经返回一个对象(取决于)或 fetchAll()返回一个数组,因此你将一个数组($ res)存储在另一个数组($ dataArray)中。 / p>
你需要做的就是从你的函数返回$ res,然后在你的foreach()里面,使用list()
list($hight, $length) = $Data;
或者,在没有辅助变量的情况下使其更容易:
list($hight,$length) = getdatastigning($stignr1);