Php 如何将多个阵列合并为一个阵列?
正如您所看到的,我的JSON数组中的每个属性都包含一个数组。那么,如何将所有数组的第一个值合并到一个数组中,将所有数组的第二个值合并到另一个数组中呢?还有如何提取每个值,如$data['?'],然后再提取 我想在数据库中插入一个ID的所有项,然后再插入下一个ID的项。请问如何以这种方式排列阵列 期望输出:Php 如何将多个阵列合并为一个阵列?,php,arrays,Php,Arrays,正如您所看到的,我的JSON数组中的每个属性都包含一个数组。那么,如何将所有数组的第一个值合并到一个数组中,将所有数组的第二个值合并到另一个数组中呢?还有如何提取每个值,如$data['?'],然后再提取 我想在数据库中插入一个ID的所有项,然后再插入下一个ID的项。请问如何以这种方式排列阵列 期望输出: Json string : $return ='{"contract_id":["33"],"group":["1","2"],"item":["1","No items found"],"h
Json string : $return ='{"contract_id":["33"],"group":["1","2"],"item":["1","No items found"],"harga_1":["4","1"],"qty":["2","2"],"amount":["8","2"],"action":"test"}';
$data = json_decode($return, true);
var_dump($data['item']);
array (size=2)
0 => string '1' (length=1)
1 => string 'No items found' (length=14)
var_dump($data['group']);
output:
array (size=2)
0 => string '1' (length=1)
1 => string '2' (length=1)
这是multisort的一个示例
$array1 = array("ID"=>"33","group" => "ef4", "item" => "apple", "harga" => "56".....);
$array2 = array("ID"=>"33","group" => "rfrf4", "item" => "a45erf4e", "harga" => "54".....);
PHP函数:
尝试以下操作:
<?php
//JSON
$json ='{"contract_id":["33"],"group":["A","B"],"item":["A1","BNo items found"],"harga_1":["A4","B1"],"qty":["A2","B2"],"amount":["A8","B2"],"action":"test"}';
$data = json_decode($json, true);
// Contract
$contractId = array_shift($data); // [33]
$firstRow = array_column($data, 0);
$secondRow = array_column($data, 1);
/* result:
*
* firstRow => array("A","A1","A4","A2","A8")
* secondRow => array("B","BNo items found","B1","B2","B2")
*/
想要的结果是什么,你得到了什么,你尝试了什么?@火影忍者,我已经在我的帖子中更新了想要的输出。此外,我还尝试过使用array\u merge\u recursive和array\u combine“item”=>“apple”
苹果的从哪里来?实际上,我不知道如何从$result
获得所需的输出,但我认为array\u intersect\u键会有所帮助,但我不确定如何对多个数组执行此操作?
<?php
//JSON
$json ='{"contract_id":["33"],"group":["A","B"],"item":["A1","BNo items found"],"harga_1":["A4","B1"],"qty":["A2","B2"],"amount":["A8","B2"],"action":"test"}';
$data = json_decode($json, true);
// Contract
$contractId = array_shift($data); // [33]
$firstRow = array_column($data, 0);
$secondRow = array_column($data, 1);
/* result:
*
* firstRow => array("A","A1","A4","A2","A8")
* secondRow => array("B","BNo items found","B1","B2","B2")
*/
<?php
$data = json_decode('{"contract_id":["33"],"group":["1","2"],"item":["1","No items found"],"harga_1":["4","1"],"qty":["2","2"],"amount":["8","2"],"action":"test"}', true);
$values = array( 'contract_id' , 'group' , 'item' , 'harga_1' , 'qty' , 'amount' );
$arrays = array();
for($i = 0; $i < count($data['item']); $i++){
$arrays[$i] = array();
foreach($values as $value){
$arrays[$i][$value] = isset($data[$value][$i]) ? $data[$value][$i]: $data[$value][0];
}
}
var_dump($arrays);
$arrays = array (
0 => array (
'contract_id' => '33',
'group' => '1',
'item' => '1',
'harga_1' => '4',
'qty' => '2',
'amount' => '8',
),
1 => array (
'contract_id' => '33',
'group' => '2',
'item' => 'No items found',
'harga_1' => '1',
'qty' => '2',
'amount' => '2',
),
)