繁体   English   中英

从多行MySQL到单数组的值

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM