1. PDO(PHP Data Objects)
PDO는 여러 데이터베이스를 지원하는 방식이다.
<?php
/*DSN(Data Source Name) 설정
mysql: 사용하려는 데이터베이스 드라이버(MySQL 사용)
host=localhost: 데이터베이스 서버 주소(로컬 개발 환경이므로 localhost 사용)
dbname=test_db: 연결할 MySQL 데이터베이스명
charset=utf8mb4: 문자 인코딩 방식(이모지 같은 유니코드 문자 지원)*/
$dsn = "mysql:host=localhost;dbname=test_db;charset=utf8mb4";
$username = "root"; //MySQL 사용자명
$password = ""; //비밀번호(기본적으로 비어 있음)
try {
//PDO 객체 생성
$pdo = new PDO($dsn, $username, $password, [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, //오류 처리 방식 설정
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, //데이터 가져오는 방식
]);
echo "연결 성공";
} catch(PDOException $e) {
die("연결 실패: ".$e->getMessage());
}
?>
2. MySQLi(MySQL Improved)
MySQLi는 MySQL 전용으로 만들어진 PHP의 확장 라이브러리이다.
2-1. 절차적 방식
<?php
$servername = "localhost"; //서버 주소(원격이면 IP나 도메인 입력)
$username = "root"; //MySQL 사용자명
$password = ""; //비밀번호(로컬 개발 환경에서는 보통 빈 값)
$database = "test_db"; //사용할 데이터베이스명
//MySQL 연결
$db = mysqli_connect($servername, $username, $password, $database);
//연결 확인
if(!$db) {
die("연결 실패: ".mysqli_connect_error());
}
echo "연결 성공";
//연결 종료
mysqli_close($db);
?>
2-2. 객체지향 방식
<?php
$servername = "localhost"; //서버 주소
$username = "root"; //MySQL 사용자명
$password = ""; //비밀번호(로컬 환경에서는 빈 값일 수 있음)
$database = "test_db"; //데이터베이스명
//MySQLi 객체 생성 및 연결
$db = new mysqli($servername, $username, $password, $database);
//연결 확인
if($db->connect_error) {
die("연결 실패: ".$db->connect_error);
}
echo "연결 성공";
//연결 종료
$db->close();
?>
'Language > PHP' 카테고리의 다른 글
[PHP]폼을 이용한 성적 추가 (0) | 2025.03.16 |
---|---|
[PHP]DB 데이터 테이블에 출력하기 (0) | 2025.03.16 |
[PHP]MySQL 쿼리 실행하기 (0) | 2025.03.16 |
[PHP]서버와의 관계 (1) | 2025.03.09 |