2012-05-29 2 views
1

가능한 중복은 :
mysqli or PDO - what are the pros and cons?
PHP PDO and MySQLiPHP에서 MySQL을 통한 PDO를 사용해야하는 이유는 무엇입니까?

는 최근 MySQL을 통해 "PDO"를 사용하라고 말하는 사람들 귀착 question 물었다. 왜 그런가요? 다른 장점보다 어떤 이점이 있습니까?

+1

'POD'가 아니라 PHP 데이터 객체를 나타내는'PDO'입니다. – nickb

+0

설명을 위해 여전히 MySQL 데이터베이스에 액세스하고 있습니다. PDO는 액세스하는 또 다른 (더 좋은) 방법입니다 - 예를 들어 표준 mysql 함수로는 할 수없는 쿼리 매개 변수화를 얻을 수 있습니다. – halfer

+0

PDO는 다른 데이터베이스 엔진 (MySQL, PostgreSQL 등)과의 상호 작용을 위해 객체 지향 추상화를 제공하는 라이브러리이므로 하나의 API 만 사용하여 모든 연결을 처리합니다. 또한 PDO는 준비된 문을 지원하므로 SQL 쿼리에 모든 매개 변수를 입력하는 대신 쿼리를 실행하려고 할 때 올바른 값을 바인드하고 자리 표시 자만 넣을 수 있습니다. 이렇게하면 응용 프로그램에서 SQL 주입 공격을 수행하는 것이 어렵거나 어렵습니다. –

답변

7

mysql_* 기능이 더 이상 유지 관리되지 않으며 커뮤니티가 deprecation process으로 시작되었습니다. 대신 prepared statements에 대해 알아야하고 PDO 또는 MySQLi을 사용해야합니다.

결정할 수없는 경우 this article을 선택해야합니다. 비록 당신이 알아야 할 것은, PDO는 여러 종류의 RDBMS에서 작동 할 수 있지만, MySQLi는 특정 데이터베이스를 위해 만들어 졌다는 것입니다.

PDO를 사용하기로 결정한 경우 this tutorial을 따르는 것이 좋습니다.

0

하나의 경우, mysql_ * 함수는 deprecated이됩니다.

둘째, PDO 기능은 사용하기가 더 쉽고 MySQL이 아닌 데이터베이스의 데이터베이스에서도 사용할 수 있습니다.

PDO를 사용할 필요가 없다는 점도 유의하십시오. mysqli도 좋습니다.

+1

수정에 대한 유용한 정보입니다. 수정 : 해당 정보는 무시됩니다. 이러한 비추천은 아직 [MySQL 확장 매뉴얼] (http://us2.php.net/manual/en/book.mysql.php) –

+0

에 언급되어 있지 않습니다. 저의 답변을 지적 해 주셔서 감사합니다. – Jeroen

0

PDO는 다양한 종류의 데이터베이스에 액세스하는 일관된 방법을 제공합니다. 인터넷을 빠르게 살펴 보는 것이 도움이 될 수 있습니다.

관련 문제