ThinkPHP は、PHP で書かれたオープンソースの Web フレームワークであり、学習が簡単で、効率的で、高速で、安全で安定しています。 ThinkPHP を使用して開発する場合、データを保存および管理するにはデータベースに接続する必要があります。この記事では、データベースへの接続方法と基本的な操作方法を紹介します。
1. データベース接続情報の構成
ThinkPHP では、パブリック構成ファイル config.php でデータベース接続情報を構成する必要があります。 config.php ファイルで、次のコードを見つけます:
//数据库类型 'DB_TYPE' => 'mysql', //服务器地址 'DB_HOST' => 'localhost', //数据库名 'DB_NAME' => 'thinkphp', //用户名 'DB_USER' => 'root', //密码 'DB_PWD' => 'root', //端口 'DB_PORT' => '3306', //表前缀 'DB_PREFIX' => 'think_',
その中で、DB_TYPE はデータベース タイプであり、現在 mysql、mysqli、PDO およびその他のタイプをサポートしています; DB_HOST はデータベース サーバー アドレスであり、 IP アドレスまたはドメイン名、DB_NAME は接続前に作成する必要があるデータベース名、DB_USER と DB_PWD はそれぞれデータベースのユーザー名とパスワードで、データベースへのアクセス許可が必要です、DB_PORT はデータベース接続用のポートです。 、デフォルトは 3306、DB_PREFIX はデータ テーブルのプレフィックスであり、2 つのアプリケーションがデータベースを共有するときに複数のテーブル名の競合を避けるために使用されます。
2. データベースへの接続
データベース接続情報の構成が完了したら、データベース オブジェクトをインスタンス化してデータベースに接続できます。 ThinkPHP では、Db クラスを使用してデータベースに接続し、操作します。例:
use thinkDb; // 连接数据库 $conn = Db::connect();
接続のデータベース構成を指定する必要がある場合は、connect メソッドで配列パラメータを渡すことができ、その配列にはデータベース接続情報が含まれます。例:
$config = [ //数据库类型 'type' => 'mysql', //服务器地址 'hostname' => 'localhost', //数据库名 'database' => 'thinkphp', //用户名 'username' => 'root', //密码 'password' => 'root', //端口 'hostport' => '', //表前缀 'prefix' => 'think_', ]; // 连接数据库 $conn = Db::connect($config);
3. データベース操作
データベースに接続した後、クエリ、挿入、更新、削除などのデータベース操作を実行できます。以下では、クエリ操作を例に説明します。
クエリ メソッドを使用してレコードをクエリします。例:
// 查询一条记录 $record = $conn->query('select * from think_user limit 1');
クエリ メソッドは PDOStatement オブジェクトを返します。レコードを取得するフェッチ メソッドを通じて使用されます。
// 获取查询结果 $row = $record->fetch(PDO::FETCH_ASSOC);
複数のレコードをクエリするには、select メソッドを使用します。例:
// 查询多条记录 $list = $conn->table('think_user')->select();
テーブル メソッドは、データの設定に使用されます。 Table 操作では、select メソッドを使用して複数のレコードを取得します。
where メソッドを使用してクエリ条件を設定できます。例:
// 条件查询 $list = $conn->table('think_user')->where('id', '=', 1)->select();
このうち、where メソッドは 3 つのパラメータを受け取ります。フィールド名、比較演算子と値であり、チェーン操作を通じて複数の条件付きクエリを実装できます。例:
// 多条件查询 $list = $conn->table('think_user') ->where('id', '=', 1) ->where('status', '=', 1) ->select();
insert メソッドを使用してレコードを挿入します。例:
// 插入记录 $data = [ 'username' => 'admin', 'password' => md5('123456'), 'status' => 1, ]; $result = $conn->table('think_user')->insert($data);
insert メソッドは配列パラメーターを受け取ります。 、配列内にはフィールド名と対応する値が含まれます。
update メソッドを使用してレコードを更新します。例:
// 更新记录 $data = ['status' => 0]; $result = $conn->table('think_user') ->where('id', '=', 1) ->update($data);
update メソッドは配列パラメータを受け取り、配列には次のものが含まれます。フィールド名と対応する値。
レコードを削除するには、delete メソッドを使用します。例:
// 删除记录 $result = $conn->table('think_user') ->where('id', '=', 1) ->delete();
このうち、delete メソッドは、条件を満たす複数のレコードを削除できます。条件を指定し、条件パラメータを渡さないと、テーブル全体がクリアされます。
4. 概要
上記の手順により、データベースに正常に接続し、基本的なクエリ、挿入、更新、削除の操作を実行できます。 ThinkPHP を使用して開発する場合、データベースを頻繁に扱う必要があるため、データベースの操作に習熟することが非常に重要です。同時に、運用時にはSQLインジェクションなどのセキュリティ問題にも注意し、パラメータバインディングなどを可能な限り利用してリスクを回避する必要があります。
以上がthinkphp にデータを接続する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。