Home >Backend Development >PHP Problem >php convert object to array
In PHP programming, we often need to convert data types between objects and arrays. Arrays and objects are both very important data types in PHP, with their own advantages and uses. It is very important for developers to master the skills of converting between objects and arrays, which can help us process data and code logic more efficiently. This article will introduce how to convert objects into arrays in PHP.
1. Arrays and objects in PHP
Arrays and objects in PHP are two different data types. An array is a data structure consisting of an ordered set of key-value pairs, each key-value pair is called an element. The elements in the array can be of any data type, such as strings, integers, floating point numbers, objects, etc.
Objects in PHP are data types with specific properties and methods, created through class definitions. An object instance usually has multiple properties and methods. Objects can be thought of as real-life entities, while classes can be thought of as a blueprint used to describe that entity.
2. Methods of converting objects into arrays
In PHP, you can use a variety of methods to convert objects into arrays. This article will introduce three of these methods.
1. Use the forced conversion method
We can use the forced conversion method to convert an object into an array, as shown below:
$obj = new stdClass; $obj->name = 'John Smith'; $obj->age = 30; $arr = (array) $obj; print_r($arr);
Run the above code, you will get The following output results:
Array ( [name] => John Smith [age] => 30 )
We can see that the converted array contains the properties and corresponding values of the object.
2. Use the get_object_vars() function
Another method is to use the PHP built-in function get_object_vars(), which returns the attribute list of the specified object. We can use this function to convert the object into an array, as shown below:
$obj = new stdClass; $obj->name = 'John Smith'; $obj->age = 30; $arr = get_object_vars($obj); print_r($arr);
Running the above code, you will get the following output:
Array ( [name] => John Smith [age] => 30 )
We can see that using the get_object_vars() function The converted array also contains the object's properties and corresponding values.
3. Use the json_decode() function
Another way to convert an object into an array is to use the json_decode() function. This method first converts the object into a JSON string, and then converts the JSON string into an array. As shown below:
$obj = new stdClass; $obj->name = 'John Smith'; $obj->age = 30; $json = json_encode($obj); $arr = json_decode($json, true); print_r($arr);
Run the above code, you will get the following output:
Array ( [name] => John Smith [age] => 30 )
We can see that the array converted using the json_decode() function also contains the properties of the object and the corresponding value.
3. Summary
This article introduces three methods of converting objects into arrays in PHP, namely using forced conversion, using the get_object_vars() function and using the json_decode() function. Developers can choose different methods based on their own needs and habits. Mastering the conversion skills between objects and arrays can help us better handle data and code logic and improve development efficiency.
The above is the detailed content of php convert object to array. For more information, please follow other related articles on the PHP Chinese website!