반응형
PHP에서 MySQL 연결방식에 사용되는 API는 세 종류가 있습니다.
(1) MySQL API
오래 전 부터 사용되었고 mysql_ 로 시작하는 함수로 구성되어 있습니다.
PHP 5.5 버전부터는 사용을 권장하지 않으며, PHP 7 버전부터는 삭제되어 사용이 불가합니다.
(2) MySQLi API
MySQL API를 개선한 것으로 PHP 5 버전부터 사용이 가능하며 prepared statement를 사용할 수 있습니다.
(3) PDO(PHP Data Object)
PHP를 사용하여 서로 다른 종류의 DB에 접근하는 공통 API를 제공하는 것을 목표로 만들어 졌습니다.
객체기반의 API이고 prepared statement를 제공합니다.
이렇게 여러 방식이 있지만 가장 권장하여 사용되는 방식은 MySQLi 확장을 이용하는 방식입니다.
# 절차지향 스타일
<?php
$host = "localhost";
$user = "root";
$pwd = "1234";
$db = "test";
$conn = mysqli_connect($host, $user, $pwd, $db, 포트번호);
if (!$conn){
die("연결실패: " . mysqli_connect_error());
}
echo "연결성공";
?>
$host : DB서버의 IP 또는 도메인
$user : DB 사용자 ID
$pwd : DB 사용자 비밀번호
$db : 연결할 DB
5번째 인자인 포트번호는 기본적으로 3306이기 때문에 굳이 입력하지 않아도 됩니다.
하지만 포트가 변경되었다면 입력해주어야 합니다.
# 객체지향 스타일
<?php
$host = "localhost";
$user = "root";
$pwd = "1234";
$db = "test";
$conn = new mysqli($host, $user, $pwd, $db);
if ($conn->connect_error) {
die("연결실패:" . $conn->connect_error);
}
echo "연결성공";
?>
위와 같이 객체지향 인터페이스를 사용하면 데이터베이스 연결 리소스를 함수에 전달할 필요 없이 해당 객체가 하나의 데이터베이스 연결 객체로서 작동합니다.
반응형
'php' 카테고리의 다른 글
[php/mysql 연동] 데이터 조회/입력/수정/삭제 (0) | 2021.08.31 |
---|---|
[HTML Form을 통한 데이터 전송] select 태그 (0) | 2021.08.29 |
[HTML Form을 통한 데이터 전송] input 태그 (1) | 2021.08.28 |
[HTML Form을 통한 데이터 전송] POST, GET (0) | 2021.08.27 |
[php 내장함수] 네트워크 관련 함수 (0) | 2021.08.26 |