[英]Values From Multi-Row MySQL To Single Array
从MySQL数据库中获取多行数据,然后尝试将结果转换为单个数组。 由于数据来自自定义函数,在该函数中进行修改会破坏许多其他内容,因此我无法更改获取数据的方式,因此必须在使用PHP检索后进行处理。 这是一个示例:
Array
(
[0] => Array
(
[FieldLabel] =>
[FieldName] => ID
[FieldValue] => $ID
[FieldType] => 0
)
[1] => Array
(
[FieldLabel] => Name
[FieldName] => Name
[FieldValue] => $FieldName
[FieldType] => 1
)
)
寻找这样的东西,它只有一个数组中的所有值,但要填充变量:
Array('','ID',$ID,0,'Name','Name',$FieldName,1)
我在另一篇文章中发现了这个小功能,似乎可以创建一个数组,但是不幸的是,它并没有,而且我对数组操作的了解还不足以将其整理出来。 有任何想法吗?
function array2Recursive($array) {
$lst = array();
foreach( array_keys($array) as $k ) :
$v = $array[$k];
if (is_scalar($v)) :
$lst[] = $v;
elseif (is_array($v)) :
$lst = array_merge($lst,array2Recursive($v));
endif;
endforeach;
return array_values(array_unique($lst));
}
解决此问题的方法可能是使用foreach遍历所有项并将它们添加到数组中:
$result = [];
foreach ($array as $a) {
foreach($a as $item) {
$result[] = $item;
}
}
print_r($result);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.