>  기사  >  PHP 프레임워크  >  thinkphp로 데이터를 연결하는 방법

thinkphp로 데이터를 연결하는 방법

PHPz
PHPz원래의
2023-05-26 09:04:361367검색

ThinkPHP는 PHP로 작성된 오픈 소스 웹 프레임워크로, 배우기 쉽고 효율적이며 빠르고 안전하며 안정적입니다. 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 주소 또는 IP 주소일 수 있는 데이터베이스 서버 주소입니다. 도메인 이름, DB_NAME은 연결하기 전에 생성해야 하는 데이터베이스 이름입니다. DB_USER 및 DB_PWD는 각각 데이터베이스에 액세스하기 위한 권한이 필요한 데이터베이스 연결 포트입니다. 3306; DB_PREFIX는 테이블 이름 충돌을 피하기 위해 데이터베이스를 공유하는 여러 응용 프로그램에 사용되는 데이터 테이블 접두사입니다.

2. 데이터베이스 연결

데이터베이스 연결 정보 구성을 완료한 후 데이터베이스 개체를 인스턴스화하여 데이터베이스에 연결할 수 있습니다. ThinkPHP에서는 Db 클래스를 사용하여 데이터베이스를 연결하고 운영합니다. 예:

use thinkDb;

// 连接数据库
$conn = Db::connect();

연결의 데이터베이스 구성을 지정해야 하는 경우 연결 메서드에 배열 매개변수를 전달할 수 있으며 배열에는 데이터베이스 연결 정보가 포함됩니다. 예:

$config = [
    //数据库类型
    'type'     => 'mysql',
    //服务器地址
    'hostname' => 'localhost',
    //数据库名
    'database' => 'thinkphp',
    //用户名
    'username' => 'root',
    //密码
    'password' => 'root',
    //端口
    'hostport' => '',
    //表前缀
    'prefix'   => 'think_',
];

// 连接数据库
$conn = Db::connect($config);

3. 데이터베이스 작업

데이터베이스에 연결한 후 쿼리, 삽입, 업데이트, 삭제를 포함한 데이터베이스 작업을 수행할 수 있습니다. 다음은 설명을 위한 예시로 쿼리 작업을 사용합니다.

  1. 기록 쿼리

기록을 쿼리하려면 쿼리 메서드를 사용하세요. 예:

// 查询一条记录
$record = $conn->query('select * from think_user limit 1');

그 중 쿼리 메서드는 PDOStatement 개체를 반환하며, fetch 메서드를 통해 레코드를 가져올 수 있습니다.

// 获取查询结果
$row = $record->fetch(PDO::FETCH_ASSOC);
  1. Query multiple records

여러 레코드를 쿼리하려면 select 메서드를 사용하세요. 예:

// 查询多条记录
$list = $conn->table('think_user')->select();

그 중 table 메서드는 작업의 데이터 테이블을 설정하는 데 사용되고 select 메서드는 가져오는 데 사용됩니다. 여러 기록.

  1. 조건부 쿼리

where 메소드를 통해 쿼리 조건을 설정할 수 있습니다. 예:

// 条件查询
$list = $conn->table('think_user')->where('id', '=', 1)->select();

그중 where 메소드는 필드 이름, 비교 연산자 및 값이라는 세 가지 매개변수를 받으며, 여러 조건을 통해 구현할 수 있습니다. 체인 운영에 문의하세요. 예:

// 多条件查询
$list = $conn->table('think_user')
                ->where('id', '=', 1)
                ->where('status', '=', 1)
                ->select();
  1. Insert Record

insert 메서드를 사용하여 레코드를 삽입합니다. 예:

// 插入记录
$data = [
    'username' => 'admin',
    'password' => md5('123456'),
    'status'   => 1,
];
$result = $conn->table('think_user')->insert($data);

그중 insert 메서드는 배열 매개변수를 받으며 배열에는 필드 이름과 해당 값이 포함됩니다.

  1. 업데이트 레코드

업데이트 메서드를 사용하여 레코드를 업데이트합니다. 예:

// 更新记录
$data = ['status' => 0];
$result = $conn->table('think_user')
                ->where('id', '=', 1)
                ->update($data);

그중 업데이트 메서드는 배열 매개변수를 받으며 배열에는 업데이트할 필드 이름과 해당 값이 포함됩니다.

  1. 레코드 삭제

레코드를 삭제하려면 삭제 메소드를 사용하세요. 예:

// 删除记录
$result = $conn->table('think_user')
                ->where('id', '=', 1)
                ->delete();

그 중 삭제 메소드는 조건 매개변수가 전달되지 않으면 전체 테이블이 삭제됩니다. 지워졌습니다.

4. 요약

위 단계를 통해 데이터베이스에 성공적으로 연결하고 기본 쿼리, 삽입, 업데이트 및 삭제를 수행할 수 있습니다. ThinkPHP로 개발을 하다 보면 데이터베이스를 자주 다루어야 하기 때문에 데이터베이스 운용에 능숙한 것이 매우 중요합니다. 동시에, 운영 시 SQL 주입 등 보안 문제에 주의해야 하며, 매개변수 바인딩 및 기타 방법을 최대한 사용하여 위험을 방지해야 합니다.

위 내용은 thinkphp로 데이터를 연결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.