In PHP, we often use databases for data storage and retrieval operations. When we retrieve data from the database, we often need to convert the result object into an array for easy processing, display, or transfer to other programs for processing. This article will introduce you how to convert the result object into an array in PHP.
First of all, we need to make it clear that the result object in PHP is often of type PDOStatement or mysqli_result. These classes provide a series of methods for obtaining query result data. However, if you use these methods to obtain results directly, the returned data is often an object, which is not easy to process. Therefore, we need to convert the result object into an array.
Method 1. Use the fetchAll() method in PDO
When using PDO for database query, we can use the fetchAll() method to obtain the query results. This method returns a two-dimensional array containing the query results. Pass the array to the json_encode() function to convert it into JSON format and pass it to the front end for display or operation.
For example, the following code example demonstrates how to use the fetchAll() method in PDO to convert the result object into an array:
$stmt = $pdo->query('SELECT * FROM users'); $result = $stmt->fetchAll(PDO::FETCH_ASSOC); echo json_encode($result);
Method 2. Use the fetch_all() method in mysqli
When using mysqli to query the database, we can use the fetch_all() method to obtain the query results. This method returns a two-dimensional array containing the query results. Similarly, pass the array to the json_encode() function to convert it into JSON format and pass it to the front end for display or operation.
For example, the following code example demonstrates how to use the fetch_all() method in mysqli to convert the result object into an array:
$result = $mysqli->query('SELECT * FROM users')->fetch_all(MYSQLI_ASSOC); echo json_encode($result);
Method 3. Manually traverse the result object and convert each row of data For array
In addition to the above two methods, we can also manually iterate through the result object and convert each row of data into an array. This method is relatively cumbersome, but may be helpful for some special needs.
The following is a sample code that manually traverses the result object and converts each row of data into an array:
$stmt = $pdo->query('SELECT * FROM users'); $result = array(); while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { $result[] = $row; } echo json_encode($result);
Summary
The above are three ways to convert the result object into an array method. Among them, using the fetchAll() or fetch_all() method is the most common and simple method. It should be noted that using the fetchAll() or fetch_all() method may load all results into memory at once, which may cause insufficient memory if the result set is large. Therefore, when processing large result sets, we can use paging and other methods to reduce memory usage.
The above is the detailed content of How to convert php result object to array. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SublimeText3 Linux new version
SublimeText3 Linux latest version
