我有这样的数组值:
Array ( [cont_no] => Array ( [0] => 43-15 [1] => 44-18 )
现在我需要拆分每个数组值,43-15应该使用“ - ”这个键拆分,然后转换为JSON类型:
{"employees":[
{"cont_no":"43", "repo_id":"15"},
{"cont_no":"44", "repo_id":"18"},
]}
答案 0 :(得分:1)
我认为这会起作用
$jsonme =["employees"=>[]];
foreach( $ar as $a){
$vals = explode("-", $a[0]);
$jsonme["employees"]=[
"yourkey1" => $vals[0],
"yourkey2" => $vals[1]
];
$json = json_encode($jsonme);
将您的密钥替换为您希望它嵌套在json中的密钥。 (另外,没有测试过,但我认为它是正确的)
答案 1 :(得分:0)
试试这个:
json_encode($array[0]);
答案 2 :(得分:0)
<?php
$src = [ 'cont_no' => [
'43-15', '44-18'
]];
$target = array_map(
function($e) {
return array_combine(
['cont_no', 'repo_id'],
explode('-', $e)
);
},
$src['cont_no']
);
echo json_encode($target);
打印
[{"cont_no":"43","repo_id":"15"},{"cont_no":"44","repo_id":"18"}]
另见:
答案 3 :(得分:0)
使用此代码
$arr = array (cont_no => array ( 0 => '43-15', 1 => '44-18' ));
$finalArr['employees'] = array();
foreach($arr['cont_no'] as $val)
{
$out = explode('-',$val);
$finalArr['employees'][]['cont_no'] = $out['0'];
$finalArr['employees'][]['repo_id'] = $out['1'];
}
echo json_encode($finalArr);