When you need to use a database query in a Laravel application, Laravel's query builder provides many methods to obtain and process the returned result set. Use these methods to convert the result set into an array or collection for easier processing. This article will explain how to use the Laravel query builder to convert a result set into an array.
Laravel's query builder provides the toArray() method to convert the result set into an array. The toArray() method will return an array consisting of the attributes of each query result row, where each row is an associative array, the key is the attribute name, and the value is the attribute value corresponding to the row.
For example, the following code will query all records in the users table and convert the result set into an array:
$users = DB::table('users')->get()->toArray();
In this example, first call the get() method to get all user records, On this basis, call the toArray() method to convert the result set into an array, and assign the result to the $users variable.
You can use the print_r() or var_dump() function to view the results, as shown below:
print_r($users);
Output results:
Array ( [0] => Array ( [id] => 1 [name] => John [email] => john@example.com ) [1] => Array ( [id] => 2 [name] => Jane [email] => jane@example.com ) )
Sometimes, we need to convert the result set into a simple associative array instead of a subarray for each row. We can easily achieve this by calling the pluck() and toArray() methods.
For example, the following code will query all records in the users table and convert the name column in the result set into a pure array:
$names = DB::table('users')->pluck('name')->toArray();
In this example, the pluck() method is first called Get all name attribute values, call the toArray() method to convert the result set into an array, and assign the result to the $names variable.
You can use the print_r() or var_dump() function to view the results, as shown below:
print_r($names);
Output results:
Array ( [0] => John [1] => Jane )
In addition to converting result sets to arrays, Laravel also provides methods for converting collections to arrays. A collection is an object that represents a collection of multiple objects and provides advanced operations on the collection.
Use the collect() method to convert the result set into a collection, and then use the toArray() method to convert the collection into an array. For example, the following code will query all records in the users table and convert the result set into a collection and array:
$users_collection = collect(DB::table('users')->get()); $users_array = $users_collection->toArray();
In this example, first call the get() method to get all user records, and use collect( ) method converts the result set into a collection. Then call the toArray() method to convert the collection to an array and assign the result to the $users_array variable.
You can use the print_r() or var_dump() function to view the results, as shown below:
print_r($users_array);
Output results:
Array ( [0] => Array ( [id] => 1 [name] => John [email] => john@example.com ) [1] => Array ( [id] => 2 [name] => Jane [email] => jane@example.com ) )
Summary:
Laravel The query builder provides many methods to convert the result set into an array or collection for easier processing. This article demonstrates how to use the Laravel query builder to convert a result set to an array or a pure array, as well as a method to convert a collection to an array. These methods will be very useful when doing Laravel development.
The above is the detailed content of How to convert result set to array in Laravel. For more information, please follow other related articles on the PHP Chinese website!