两个数组中的对象数组

If i have the following array

$arr = [4,7,8];
$var = 3

and need the following result using PHP functions and operators or most efficient way for large arrays.

$result = [
 [3,4],
 [3,7],
 [3,8]
]

My way is the following

$col1 = array_pad($vals,sizeof($arr),$var); // [3,3,3]
$result = array_map(null,$col1,$arr); 

Try it:

<?php

$arr = [4, 7, 8];
$var = 3;

$result = array_map(
    function ($itm) use ($var) {
        return [$var, $itm];
    },
    $arr
);

UPDATE: I've checked it. So my variant is slower in two time than the variant with foreach

Idk about performance, but use basic maybe lightweight.

$arr = [4,7,8];
$var = 3;

$result = [];

// 
for($i = 0; $i < sizeof($arr); $i++)
{
  $result[$i] = [$var, $arr[$i]];
}
<?php

$arr = [4,7,8];
$var = 3;

foreach($arr as $v)
    $out[]=[$var, $v];

var_export($out);

Output:

array (
0 => 
array (
    0 => 3,
    1 => 4,
),
1 => 
array (
    0 => 3,
    1 => 7,
),
2 => 
array (
    0 => 3,
    1 => 8,
),
)