close"로 연결을 닫습니다. )" 또는 "mysqli_close()"."/> close"로 연결을 닫습니다. )" 또는 "mysqli_close()".">

>백엔드 개발 >PHP 문제 >php가 mysql에 연결하는 방식에 차이가 있나요?

php가 mysql에 연결하는 방식에 차이가 있나요?

WBOY
WBOY원래의
2022-04-26 17:38:582703검색

차이점: 1. PDO는 12개의 서로 다른 데이터베이스에서 사용되는 반면 MySQLi는 mysql 데이터베이스에서만 사용됩니다. 2. PDO는 "$conn = null"에서 연결을 닫는 반면 MySQLi는 "$conn->close에서 연결을 닫습니다. ()" 또는 "mysqli_close()".

php가 mysql에 연결하는 방식에 차이가 있나요?

이 문서의 운영 환경: Windows 10 시스템, PHP 버전 7.1, Dell G3 컴퓨터.

php에서 mysql에 연결하는 방식에 차이가 있나요?

php5.3 버전 이후에는 데이터베이스에 연결하는 방법이 두 가지가 있는데, 하나는 mysqli를 통해, 다른 하나는 PDO를 통해 연결하는 것입니다. mysqli 데이터베이스는 mysqli(객체 지향), mysqli(프로세스 지향)의 두 가지 상황으로 나눌 수 있습니다.
즉, 세 가지 방법이 있습니다.
1) PDO가 mysql에 연결
2) mysqli(객체 지향)가 연결됩니다. 3) 데이터베이스에 연결하기 위한 mysqli(프로세스 지향)
(사실 또 다른 연결 방법이 있습니다: MySQL 확장을 사용하는 것입니다. 하지만 이 확장은 2012에서는 권장되지 않습니다.)

PDO 연결 예

먼저 phpinfo() 명령을 통해 php를 확인할 수 있습니다. PDO 설치 여부(저는 php7을 사용하는데 기본적으로 이미 설치되어 있습니다.)

그렇지 않은 경우 웹페이지(http://php.net/manual/)를 참조하세요. en/pdo.installation.php

php가 mysql에 연결하는 방식에 차이가 있나요? 코드 예:

<?php $servername = "localhost";
$username = "root";
$password = "root";
try {
    $conn = new PDO("mysql:host=$servername;dbname=jtsys",
        $username, $password);
    echo "连接成功";
}
catch(PDOException $e)
{
    
    echo $e->getMessage();
}
?>
(사용 시 데이터베이스 사용자 이름과 비밀번호는 물론 선택한 데이터베이스 이름(dbname) 변경에 주의하세요.

mysqli(객체 지향) ) 연결 예

먼저 phpinfo() 명령 mysqli를 통해 php가 설치되었는지 확인할 수 있습니다. (저는 php7을 사용하는데 기본적으로 이미 설치되어 있습니다.)

설치되지 않은 경우 웹페이지를 참조하세요: http:/ /php.net/manual/en/mysqli.installation.php

php가 mysql에 연결하는 방식에 차이가 있나요? 코드 예:

<?php $servername = "localhost";
$username = "root";
$password = "root";
// 创建连接
$conn =
new mysqli($servername, $username, $password);
// 检测连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}
$dbname="jtsys";
mysqli_select_db($conn,$dbname);
echo "连接成功";
?>

데이터베이스에 연결하는 mysqli(프로세스 지향)

코드 예:

<?php $servername = "localhost";
$username = "root";
$password = "root";
// 创建连接
$conn = mysqli_connect($servername, 
$username, $password);
// 检测连接
if (!$conn) {
    die("Connection 
failed: " . mysqli_connect_error());
}
$dbname="jtsys";
mysqli_select_db($conn,$dbname);
echo "连接成功";
?>

세 가지 차이점:

1. 연결을 닫는 방법: PDO:

$conn = null;
MySQLi(객체 지향):

$conn->close();
MySQLi(프로세스 지향):

mysqli_close($conn);
    PDO는 12개의 다른 데이터베이스에 적용되며 MySQLi만 for MySQL 데이터베이스
  • 프로젝트가 여러 데이터베이스 간에 전환해야 하는 경우 PDO를 사용하는 것이 좋습니다. 따라서 연결 문자열만 수정하고 부서 쿼리 문만 사용하면 됩니다. MySQLi를 사용하는 경우 모든 코드를 다시 작성해야 합니다.
  • 둘 다 객체 지향적이지만 MySQLi는 API 인터페이스도 제공합니다.
  • 두 가지 모두 준비된 명령문을 지원하므로 웹 프로젝트 보안에 매우 중요한 SQL 삽입을 방지할 수 있습니다. MySQLi:

  • 많은 PHP 프로그래머는 객체 지향 프로그래밍에 익숙하지 않기 때문에 mysqli 클래스 라이브러리가 제공하는 이 방법은 mysql 확장을 사용하는 일부 사용자에게도 편리합니다. mysqli. 실제로 mysqli_query()는 객체 지향 호출 프로세스를 캡슐화한 것입니다.
    추천 학습: "
  • PHP 비디오 튜토리얼
"

위 내용은 php가 mysql에 연결하는 방식에 차이가 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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