Prepend data in a key-value Object in php
I'm quite unfamiliar with php and I'm having difficults to prepend data in a key-value Object. I have this:
{"5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
I need place this at the beginning:
"no_job":"Please select an option"
So then my data need to be something like this:
{"no_job":"Please select an option", "5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
I've tried with:
$job_list["no_job"] = "Please select an option";
array_unshift($job_list, $job_list["no_job"]);
However the option then is duplicated at the end of the Object:
{"no_job":"Please select an option", "5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer", "no_job":"Please select an option"}
How can I achieve that?
php
add a comment |
I'm quite unfamiliar with php and I'm having difficults to prepend data in a key-value Object. I have this:
{"5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
I need place this at the beginning:
"no_job":"Please select an option"
So then my data need to be something like this:
{"no_job":"Please select an option", "5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
I've tried with:
$job_list["no_job"] = "Please select an option";
array_unshift($job_list, $job_list["no_job"]);
However the option then is duplicated at the end of the Object:
{"no_job":"Please select an option", "5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer", "no_job":"Please select an option"}
How can I achieve that?
php
1
Problem is your already adding the item into the array at$job_list["no_job"] = "Please select an option";
as well as adding it in with thearray_unshift()
– Nigel Ren
Nov 22 at 19:44
add a comment |
I'm quite unfamiliar with php and I'm having difficults to prepend data in a key-value Object. I have this:
{"5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
I need place this at the beginning:
"no_job":"Please select an option"
So then my data need to be something like this:
{"no_job":"Please select an option", "5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
I've tried with:
$job_list["no_job"] = "Please select an option";
array_unshift($job_list, $job_list["no_job"]);
However the option then is duplicated at the end of the Object:
{"no_job":"Please select an option", "5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer", "no_job":"Please select an option"}
How can I achieve that?
php
I'm quite unfamiliar with php and I'm having difficults to prepend data in a key-value Object. I have this:
{"5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
I need place this at the beginning:
"no_job":"Please select an option"
So then my data need to be something like this:
{"no_job":"Please select an option", "5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
I've tried with:
$job_list["no_job"] = "Please select an option";
array_unshift($job_list, $job_list["no_job"]);
However the option then is duplicated at the end of the Object:
{"no_job":"Please select an option", "5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer", "no_job":"Please select an option"}
How can I achieve that?
php
php
asked Nov 22 at 19:37
Cesar Jr Rodriguez
5481821
5481821
1
Problem is your already adding the item into the array at$job_list["no_job"] = "Please select an option";
as well as adding it in with thearray_unshift()
– Nigel Ren
Nov 22 at 19:44
add a comment |
1
Problem is your already adding the item into the array at$job_list["no_job"] = "Please select an option";
as well as adding it in with thearray_unshift()
– Nigel Ren
Nov 22 at 19:44
1
1
Problem is your already adding the item into the array at
$job_list["no_job"] = "Please select an option";
as well as adding it in with the array_unshift()
– Nigel Ren
Nov 22 at 19:44
Problem is your already adding the item into the array at
$job_list["no_job"] = "Please select an option";
as well as adding it in with the array_unshift()
– Nigel Ren
Nov 22 at 19:44
add a comment |
2 Answers
2
active
oldest
votes
PHP natively understands JSON, so turn it into an array, then use 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);
add a comment |
To add the key and value at the beginning of the string, turn your json into an associative array using json_decode and true
as the second parameter. Then you could use the union + operator:
$job_list = json_decode(' {"5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
', true);
$job_list = ['no_job' => 'Please select an option'] + $job_list;
echo json_encode($job_list);
Result:
{"no_job":"Please select an option","5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53437186%2fprepend-data-in-a-key-value-object-in-php%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
PHP natively understands JSON, so turn it into an array, then use 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);
add a comment |
PHP natively understands JSON, so turn it into an array, then use 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);
add a comment |
PHP natively understands JSON, so turn it into an array, then use 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);
PHP natively understands JSON, so turn it into an array, then use 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);
answered Nov 22 at 19:42
ceejayoz
140k34215299
140k34215299
add a comment |
add a comment |
To add the key and value at the beginning of the string, turn your json into an associative array using json_decode and true
as the second parameter. Then you could use the union + operator:
$job_list = json_decode(' {"5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
', true);
$job_list = ['no_job' => 'Please select an option'] + $job_list;
echo json_encode($job_list);
Result:
{"no_job":"Please select an option","5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
add a comment |
To add the key and value at the beginning of the string, turn your json into an associative array using json_decode and true
as the second parameter. Then you could use the union + operator:
$job_list = json_decode(' {"5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
', true);
$job_list = ['no_job' => 'Please select an option'] + $job_list;
echo json_encode($job_list);
Result:
{"no_job":"Please select an option","5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
add a comment |
To add the key and value at the beginning of the string, turn your json into an associative array using json_decode and true
as the second parameter. Then you could use the union + operator:
$job_list = json_decode(' {"5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
', true);
$job_list = ['no_job' => 'Please select an option'] + $job_list;
echo json_encode($job_list);
Result:
{"no_job":"Please select an option","5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
To add the key and value at the beginning of the string, turn your json into an associative array using json_decode and true
as the second parameter. Then you could use the union + operator:
$job_list = json_decode(' {"5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
', true);
$job_list = ['no_job' => 'Please select an option'] + $job_list;
echo json_encode($job_list);
Result:
{"no_job":"Please select an option","5ba68024f109b61fe95ccd02":"asistent","5bd0c379f109b673c11c9502":"seller","5be0addcf109b64c847abd26":"coder","5be0b26af109b64c847abd2c":"teacher","5becab8cf109b676d935e289":"engineer"}
edited Nov 22 at 20:00
answered Nov 22 at 19:46
The fourth bird
20.2k71326
20.2k71326
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53437186%2fprepend-data-in-a-key-value-object-in-php%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
Problem is your already adding the item into the array at
$job_list["no_job"] = "Please select an option";
as well as adding it in with thearray_unshift()
– Nigel Ren
Nov 22 at 19:44