Home > Article > Backend Development > How to use js to modify the value of php array
Javascript is a scripting language, while PHP is a server-side scripting language. Both of them play important roles in web development. In some cases, we need to modify the value of a PHP array in Javascript. In order to achieve this modification, we need to proceed as follows.
The first step is to process the PHP array. We need to initialize an array in PHP code and pass it to Javascript code. This can be achieved by using the json_encode() function in PHP. The json_encode() function accepts a PHP variable and converts it into a JSON-formatted string. This way, we can pass PHP arrays into Javascript code.
The following is a simple sample code:
<?php $myArray = array("John", "Doe", "35"); $jsonArray = json_encode($myArray); ?>
In the above code, we initialize a PHP array named $myArray, which contains three elements. Next, use the json_encode() function to convert it to a JSON-formatted string.
The second step is to obtain and modify the value of the PHP array in Javascript. We can get JSON string from PHP code using XMLHttpRequest object. Once we have the JSON string, we can convert it to an object in Javascript and modify it.
The following is the sample code:
var xmlhttp = new XMLHttpRequest(); xmlhttp.open("GET", "array.php", true); xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { var myArray = JSON.parse(this.responseText); myArray[0] = "Jane"; console.log(myArray[0]); // Output: "Jane" } }; xmlhttp.send();
In the above code, we first create an XMLHttpRequest object and use it to get the JSON string from the PHP script. Once we get the JSON string, we convert it into a Javascript object using the JSON.parse() function. Now we can modify the value of the Javascript object in the usual way and update the value of the PHP array.
Finally, we need to save the new PHP array back to the server. We can use the XMLHttpRequest object to send a POST request to the server again, passing the modified array to the PHP script. PHP script to save new array to database or file.
The following is the sample code:
var xmlhttp = new XMLHttpRequest(); xmlhttp.open("POST", "save.php", true); xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { console.log(this.responseText); // Output: "Array saved successfully" } }; xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xmlhttp.send("myArray=" + JSON.stringify(myArray));
In the above code, we again use the XMLHttpRequest object to send a POST request to the server. We use the setRequestHeader() function to set the Content-type header, indicating that we will send data using the application/x-www-form-urlencoded format. We convert the modified array into a JSON string and send it as data. In a PHP script, we can use the $_POST array to get a new array and save it to a database or file on the server.
Summary:
In many web applications, we may need to modify the value of a PHP array in Javascript. In order to achieve this, we need to use the XMLHttpRequest object to get the JSON string from the server and convert it into a Javascript object. We can modify the Javascript object and send the modified array back to the server again. In PHP script we can save new array to database or file.
The above is the detailed content of How to use js to modify the value of php array. For more information, please follow other related articles on the PHP Chinese website!