Home > Backend Development > PHP Problem > php convert object to array

php convert object to array

PHPz
Release: 2023-05-19 16:41:38
Original
787 people have browsed it

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);
Copy after login

Run the above code, you will get The following output results:

Array
(
    [name] => John Smith
    [age] => 30
)
Copy after login
Copy after login
Copy after login

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);
Copy after login

Running the above code, you will get the following output:

Array
(
    [name] => John Smith
    [age] => 30
)
Copy after login
Copy after login
Copy after login

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);
Copy after login

Run the above code, you will get the following output:

Array
(
    [name] => John Smith
    [age] => 30
)
Copy after login
Copy after login
Copy after login

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!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template