Dans le processus de développement Web, la requête de base de données est une partie inévitable. Parmi eux, thinkphp, en tant que framework PHP, fournit une multitude de méthodes de fonctionnement de base de données. Cet article explique comment utiliser thinkphp pour interroger la base de données et renvoyer un tableau.
1. Configuration de l'environnement
Avant d'utiliser thinkphp pour les opérations de base de données, vous devez d'abord effectuer une configuration de l'environnement. Les étapes spécifiques sont les suivantes :
database.php
dans le répertoire racine du projet thinkphp. Ce fichier est le fichier de configuration de la base de données thinkphp. Ouvrez le fichier et modifiez les champs suivants en fonction. aux informations pertinentes de la base de données : li>// 数据库类型 'type' => 'mysql', // 服务器地址 'hostname' => 'localhost', // 数据库名 'database' => 'database_name', // 数据库用户名 'username' => 'root', // 数据库密码 'password' => 'root', // 数据库编码 'charset' => 'utf8mb4', // 数据库表前缀 'prefix' => '',
database.php
文件,该文件是thinkphp数据库配置文件,打开该文件,按照数据库的相关信息修改以下字段:// 数据库连接参数配置 'db_config' => [ // 数据库类型 'type' => 'mysql', // 服务器地址 'hostname' => 'localhost', // 数据库名 'database' => 'database_name', // 数据库用户名 'username' => 'root', // 数据库密码 'password' => 'root', // 数据库编码 'charset' => 'utf8mb4', // 数据库表前缀 'prefix' => '', // 数据库连接参数 'params' => [ PDO::ATTR_CASE => PDO::CASE_NATURAL, // 不进行大小写转换 PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, // 抛出异常 PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, // 默认以关联数组形式返回数据 ], ],
config.php
中添加以下代码:// 数据库相关配置 'default_return_type' => 'array', // 默认返回数据集类型为数组 // 数据库配置 'db_config' => require_once(APP_PATH.'database.php'), 'database' => $db_config['database'], // 数据库名称 'prefix' => $db_config['prefix'], // 表前缀
config.php
中添加如下代码启用数据库配置及参数:$users = Db::name('user')->select(); dump($users);
二、数据库查询操作
想要查询数据库并返回数组,我们需要使用thinkphp封装的Db
类提供的相关方法。下面以查询用户表为例。
$user = Db::name('user')->where('id', 1)->find(); dump($user);
以上代码中,Db::name('user')
表示查询user表,select()
表示查询user表中的所有数据,并将结果存到$users
变量中。dump()
函数可以输出变量的详细信息,便于我们调试代码。
$count = Db::name('user')->count(); echo $count;
以上代码中,where()
函数表示查询id为1的用户,find()
函数表示查询并返回一条数据。$user
变量中存储的即为查询结果。
$usernames = Db::name('user')->column('name'); dump($usernames);
以上代码中,count()
函数可以返回user表中数据的总数。我们可以使用echo
将其输出。
$userinfos = Db::name('user')->field('name,age')->select(); dump($userinfos);
以上代码中,column('name')
表示只查询user表中的name列,$usernames
变量中存储的即为查询结果。
$users = Db::name('user')->where('age', '>', 20)->select(); dump($users);
以上代码中,field('name,age')
表示只查询user表中的name和age两列,$userinfos
变量中存储的即为查询结果。
$users = Db::query('select * from user'); dump($users);
以上代码中,where('age', '>', 20)
表示查询age大于20的用户,$users
变量中存储的即为查询结果。
'default_return_type' => 'array',
以上代码中,Db::query()
可以使用原生SQL语句查询数据库。
三、查询结果的返回类型
thinkphp支持多种查询结果的返回类型。下面介绍一些常见的返回类型。
以上代码中我们已经了解到,thinkphp默认返回数组类型的查询结果。可以在config.php
中添加如下代码,指定默认返回方式:
'default_return_type' => 'object',
我们可以设置默认返回对象类型的查询结果。在config.php
中添加如下代码:
'default_return_type' => 'json',
我们可以设置返回json类型的查询结果。在config.php
Dans le fichier de configuration, nous devons également configurer les informations de connexion de la base de données. Vous pouvez ajouter le code suivant dans config.php
: rrreee
config.php
Activer la configuration et les paramètres de la base de données : À ce stade, la configuration de notre environnement est terminée.
Db
encapsulée par thinkphp. Ce qui suit prend l'exemple de l'interrogation de la table utilisateur. 🎜🎜🎜Interroger tous les utilisateursrrreee🎜Dans le code ci-dessus, Db::name('user')
signifie interroger la table utilisateur, select() Indique l'interrogation de toutes les données de la table utilisateur et le stockage des résultats dans la variable <code>$users
. La fonction dump()
peut générer des informations détaillées sur les variables, ce qui nous permet de déboguer plus facilement le code. 🎜where()
signifie interroger l'utilisateur avec l'identifiant 1, find La fonction () représente l'interrogation et le renvoi d'une donnée. Ce qui est stocké dans la variable $user
est le résultat de la requête. 🎜count()
peut renvoyer le nombre total de données dans la table des utilisateurs. Nous pouvons utiliser echo
pour le sortir. 🎜column('name')
signifie interroger uniquement la colonne de nom dans l'utilisateur table Les résultats de la requête sont stockés dans la variable $usernames
. 🎜field('name,age')
signifie uniquement interroger l'utilisateur table Les colonnes name et age sont les résultats de la requête stockés dans la variable $userinfos
. 🎜where('age', '>', 20)
signifie interroger les utilisateurs dont l'âge est supérieur à 20 ans. Les résultats de la requête sont stockés dans la variable $users
. 🎜Db::query()
peut utiliser des instructions SQL natives pour interroger la base de données. 🎜🎜3. Type de retour des résultats de requête🎜🎜thinkphp prend en charge plusieurs types de retour de résultats de requête. Voici quelques types de retours courants. 🎜🎜🎜Array🎜Dans le code ci-dessus, nous avons appris que thinkphp renvoie par défaut les résultats de requête de type tableau. Vous pouvez ajouter le code suivant dans config.php
pour spécifier la méthode de retour par défaut : 🎜rrreeeconfig.php
: 🎜rrreeeconfig.php
: 🎜rrreee🎜 IV Résumé🎜🎜Cet article présente principalement comment utiliser thinkphp pour interroger la base de données et renvoyer un tableau. Parmi eux, nous avons découvert la configuration de l'environnement, les opérations de requête de base de données, les types de retour de résultats de requête, etc. Dans le processus de développement actuel, nous devons choisir la méthode de requête et le type de résultat appropriés en fonction des besoins spécifiques du projet. En étudiant cet article, je pense que vous aurez une compréhension plus approfondie des opérations de base de données de thinkphp. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!