首页 > 解决方案 > 在 php 中的键值对象中添加数据

问题描述

我对 php 很不熟悉,我很难在键值对象中添加数据。我有这个:

 {"5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}

我需要把它放在开头:

"no_job":"Please select an option"

那么我的数据需要是这样的:

{"no_job":"Please select an option", "5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}

我试过:

 $job_list["no_job"] = "Please select an option";
 array_unshift($job_list, $job_list["no_job"]);

然而,该选项随后在对象的末尾被复制:

{"no_job":"Please select an option", "5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer", "no_job":"Please select an option"}

我怎样才能做到这一点?

标签: php

解决方案


PHP 本机理解 JSON,因此将其转换为数组,然后使用array_merge

$originalArray = json_decode('{"5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}', true);

$newArray = array_merge(['no_job' => 'Please select an option'], $originalArray);

print json_encode($newArray);

推荐阅读