Php 根据查询结果构建多维数组

Php 根据查询结果构建多维数组,php,arrays,Php,Arrays,我有这样的代码,输出如下: Array ( [0] => 15 [1] => 13 [2] => 16 [3] => 16 [4] => 10 [5] => 10 [6] => 13 [7] => 13 ) 但是,我想要这个结构: Array ( [0] => Array ( [0] => 15, [1] => 13, [2] => 16, [3] => 16)

我有这样的代码,输出如下:

    Array ( 
[0] => 15 
[1] => 13 
[2] => 16 
[3] => 16 

[4] => 10 
[5] => 10 
[6] => 13 
[7] => 13 
)    
但是,我想要这个结构:

    Array ( 
[0] => Array ( [0] =>  15, [1] =>  13, [2] =>  16, [3] =>  16) 
[0] => Array ( [0] =>  10, [1] =>  10, [2] =>  13, [3] =>  13) 
        ) 
这并没有解决:
$score[]=array($score\u bd)。有什么想法吗

php代码

$i =0;
        foreach ($arr_user_apply as $val) {
            $new_val = array($val);
            $arr[$i] = array_merge($str, $new_arr_tags_ids, $new_val, $new_id_oferta);

            $sql = $db -> prepare("
                query
                "
            );

            call_user_func_array(array($sql, "bind_param"), $arr[$i]);

            $sql -> execute();
            $sql -> bind_result($score_bd);

            while ($sql -> fetch()) {
                $score[] = $score_bd;
            };

            $i++;
        }

如果您只是试图通过将键的键值放入新数组来向第一个数组中添加另一个维度,类似这样的操作可能会奏效:

$firstArray = Array ( 0 => 15, 1 => 15, 2 => 13, 3 => 13, 4 => 16, 5 => 16, 6 => 10, 7 => 10, 8 => 13, 9 => 13, 10 => 6, 11 => 6 );
$newArray = Array();
foreach($firstArray as $key => $value)
{
  $newArray[] = Array($key => Array($value));
}
echo "<pre>";
print_r($newArray);
echo "</pre>";
$firstArray=Array(0=>15,1=>15,2=>13,3=>13,4=>16,5=>16,6=>10,7=>10,8=>13,9=>13,10=>6,11=>6);
$newArray=Array();
foreach($firstArray作为$key=>$value)
{
$newArray[]=Array($key=>Array($value));
}
回声“;
打印(新数组);
回声“;
编辑:

如果这是一个太深的维度,那么试试这个:

$arr = array ( 0 => 15 ,1 => 15, 2 => 13, 3 => 13 ,4 => 16 ,5 => 16 ,6 => 10, 7 => 10);
foreach($arr as $key=>$value){
    $new_arr[$key][0] = $value;
}
$firstArray=Array(0=>15,1=>15,2=>13,3=>13,4=>16,5=>16,6=>10,7=>10,8=>13,9=>13,10=>6,11=>6);
$newArray=Array();
foreach($firstArray作为$key=>$value)
{
$newArray[$key]=数组($value);
}
回声“;
打印(新数组);
回声“;

我不确定问题是否清楚,但这对我来说是正确的


我试过了,但我不明白你想把原始数组的哪些部分分成多个数组?我可以帮你更准确地解释一下结构/p@rdlowrey问题是,目前,上面的代码总是只有一个数组。根据foreach循环的数量,我需要多维数组。例如[0][0]、[1][0]、[2][0]等等。arr[0][0]=arr[1][0]=?它将包含什么值?我仍然不知道问题是什么以及数组转换的规则是什么。那么您是否需要在每4个键/值对拆分数组?如果是这样的话,只需在循环中加入一个模块,并在循环的每四次迭代后进入下一个key/val对
$arr = array ( 0 => 15 ,1 => 15, 2 => 13, 3 => 13 ,4 => 16 ,5 => 16 ,6 => 10, 7 => 10);
foreach($arr as $key=>$value){
    $new_arr[$key][0] = $value;
}
            $score = array();
            while ($sql -> fetch()) {
                $score[] = $score_bd;
            };

            $new_score[] = array($score);


Array ( 
[0] => Array ( [0] => Array ( [0] => 15 [1] => 13 [2] => 16 ) ) 
[1] => Array ( [0] => Array ( [0] => 10 [1] => 13 [2] => 6 ) ) 
)