In PHP development, we often need to convert an object into an array to facilitate manipulation and processing of data. This article will introduce how to convert an object into an array.
1. Use type conversion
In PHP, we can use type conversion to convert an object into an array, and use the object-to-array function "get_object_vars()" to obtain an array of all attributes of the object. express. We can then use type conversion to convert this array representation into a standard array.
For example, we have a Person object, which has two properties: "name" and "age":
class Person { public $name = '张三'; private $age = 20; } $person = new Person();
We can use the following PHP code to convert the Person object into an array:
$arrPerson = (array)$person; print_r($arrPerson);
The output result is:
Array ( [name] => 张三 [*age] => 20 )
It should be noted that when using the type conversion method to convert the object, the private properties will not be converted. Therefore, in the above output, we see that the private property "age" is converted to "*age".
2. Use JSON encoding
PHP's "json_encode()" function can convert the object into JSON format representation, and we can then use the "json_decode()" function to convert it into an array. This method is more flexible than type conversion and can convert private properties.
For example, we use the same Person object as the above example to demonstrate this method:
class Person { public $name = '张三'; private $age = 20; } $person = new Person(); $arrPerson = json_decode(json_encode($person), true); print_r($arrPerson);
The output results are as follows:
Array ( [name] => 张三 [age] => 20 )
3. Manual conversion
In addition to the above two methods, you can also manually convert the object into an array. The advantage of this method is that you can fully control the conversion process and customize the key values of the returned array.
For example, we can add a "toArray()" method to the Person object to manually convert:
class Person { public $name = '张三'; private $age = 20; public function toArray() { return [ 'name' => $this->name, 'age' => $this->age ]; } } $person = new Person(); $arrPerson = $person->toArray(); print_r($arrPerson);
The output result is as follows:
Array ( [name] => 张三 [age] => 20 )
With the manual conversion method, we Not only can you fully control the conversion process, but you can also customize the key values of the returned array. In this way, we can easily convert objects into arrays to manipulate and process data.
Summary
This article introduces three methods on how to convert objects into arrays: using type conversion, using JSON encoding, and manual conversion. Among them, using type conversion and JSON encoding are relatively simple and common methods, while manual conversion is more flexible and can customize the key values of the returned array. In the actual development process, we can choose the appropriate method to convert objects according to specific needs.
The above is the detailed content of How to convert object into array in php. For more information, please follow other related articles on the PHP Chinese website!