将数组循环分成两部分

时间:2019-05-23 17:47:00

标签: php arrays

我有一个数组循环,数组中的第一个值是name,第二个值是要插入数组2的组合的值,像这样

Array
(
[0] => LE781291334
[1] => 0
[2] => JR792682920
[3] => 8,000.00
[4] => JR792733067
[5] => 1,800.00
[6] => JR792733072
[7] => 1,500.00
[8] => JR792733069
[9] => 700
[10] => JR792733068
 )

我需要将每个数组值配对,这样我可以将它们添加到数据库中

INSERT INTO table_name (valname, value) VALUES ('LE781291334', 0)
INSERT INTO table_name (valname, value) VALUES ('JR792682920', 8,000.00)
INSERT INTO table_name (valname, value) VALUES ('JR792733067', 1,800.00)

我完全迷惑了通过api获得的价值,我无法将它们配对,有人可以帮我成对添加它们吗?

2 个答案:

答案 0 :(得分:3)

似乎您需要array_chunk数组。
函数array_chunk将把一个数组分成x个部分,每个部分有$ n个项目。

[{ "empID" : 12 , "name":"John"} , { "empID" : 12 , "name":"John"} ]

然后像这样使用它

$n = 2;
$result = array_chunk($yourarray, $n);

答案 1 :(得分:0)

$newarray = array();

for ($i = 0; $i < count($yourarray) / 2; $i++) {
    $newarray[$yourarray[$i*2]] = $yourarray[$i * 2 + 1];
}

这假定$ yourarray是具有偶数个元素的索引数组,因此每个键都与后续值配对。

array_chunk就像上一个答案一样,可以完成相同的操作,这只是一个简单的循环,以显示其工作方式。

然后您可以使用以下内容插入数据库:

foreach ($newarray as $x => $x_value) {
    // sql to insert here - $x is the key and $x_value is the value
}