PHP 数组转xml多个key值相同处理方式
php数组key值相同会覆盖之前的数据解决方式publicfunctiondemo(){$data=["date"=˃date("Y
php数组key值相同会覆盖之前的数据
解决方式
public function demo(){
$data = [
"date"=>date("Y-m-d"),
"name"=>"测试",
];
for ($i = 0;$i<2;$i++){
$orderItem["orderItem[$i]"] =[
'startDate' => date("Y-m-d H:i:s"),
'endStart' => date("Y-m-d H:i:s"),
];
}
$data = array_merge($data,$orderItem);
$result = $this->arr2xml($data);
var_dump($result);
}
public function arr2xml($data, $root = true){
$str="";
if($root)$str .= "<request><head></head><body>";
foreach($data as $key => $val){
//去掉key中的下标[]
$key = preg_replace('/\[\d*\]/', '', $key);
if(is_array($val)){
$child = $this->arr2xml($val, false);
$str .= "<$key>$child</$key>";
}else{
$str.= "<$key>$val</$key>";
}
}
if($root)$str .= "</body></request>";
return $str;
}
相关文章
- okhttp、okhttp3使用post方式发送form-data数据
- JAVA字符串逗号分隔并对每个字符串添加引号
- [Docker系列] Install BaoTa with Docker
- [信创系列]银河麒麟安装nodejs18和npm2,并启动对应工程
- EasyExcel导出Excel并合并单元格
- Python3安装pip及pip安装whl包
- [Ubuntu系列]Ubuntu 安装 Harbor
- [Ubuntu系列]Ubuntu 安装 docker 及修改 docker 存储位置
- [Centos系列]CentOS 修改 DNS
- [Centos系列]source /etc/profile 无法永久生效问题
发表评论
评论列表
- 这篇文章还没有收到评论,赶紧来抢沙发吧~