PHP.mk документација

Преглед

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

mysqli.overview.php PHP.net прокси Преводот е вчитан
Оригинал на PHP.net
Патека mysqli.overview.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + преведен приказ Кодовите, табелите и белешките остануваат читливи во истиот тек.
Преглед

Референца за `mysqli.overview.php` со подобрена типографија и навигација.

mysqli.overview.php

Преглед

Овој дел дава вовед во опциите што ви се достапни при развивање PHP апликација која треба да комуницира со MySQL база на податоци.

Што е API?

Апликациски програмски интерфејс, или API, ги дефинира класите, методите, функциите и променливите што вашата апликација ќе треба да ги повика за да ја изврши посакуваната задача. Во случај на PHP апликации кои треба да комуницираат со бази на податоци, потребните API обично се изложени преку PHP екстензии.

API-ите можат да бидат процедурални или објектно-ориентирани. Со процедурална API, повикувате функции за извршување задачи, со објектно-ориентирана API инстанцирате класи и потоа повикувате методи на добиените објекти. Од двете, второто обично е претпочитаниот интерфејс, бидејќи е помодерно и води до подобро организиран код.

При пишување PHP апликации кои треба да се поврзат со MySQL серверот, достапни се неколку опции за API. Овој документ дискутира што е достапно и како да се избере најдоброто решение за вашата апликација.

Што е конектор?

Во документацијата на MySQL, терминот connector се однесува на софтверски дел што му овозможува на вашата апликација да се поврзе со MySQL серверот за бази на податоци. MySQL обезбедува конектори за различни јазици, вклучувајќи го и PHP.

API-ите можат да бидат процедурални или објектно-ориентирани. Со процедурална API, повикувате функции за извршување задачи, со објектно-ориентирана API инстанцирате класи и потоа повикувате методи на добиените објекти. Од двете, второто е обично претпочитаниот интерфејс, бидејќи е помодерно и води до подобро организиран код. connect со сервер за бази на податоци.

Што е драјвер?

Драјвер е софтверски дел дизајниран да комуницира со специфичен тип на сервер за бази на податоци. Драјверот може исто така да повика библиотека, како што е MySQL Client Library или MySQL Native Driver. Овие библиотеки го имплементираат протоколот на ниско ниво што се користи за комуникација со MySQL серверот за бази на податоци.

Како пример, Ако вашата PHP апликација треба да комуницира со сервер за бази на податоци, ќе треба да напишете PHP код за да извршите активности како што се поврзување со серверот за бази на податоци, прашување на базата на податоци и други функции поврзани со бази на податоци. Потребен е софтвер за да се обезбеди API што ќе ја користи вашата PHP апликација, а исто така да се справи со комуникацијата помеѓу вашата апликација и серверот за бази на податоци, можеби користејќи други посредни библиотеки каде што е потребно. Овој софтвер е познат генерално како конектор, бидејќи му овозможува на вашата апликација да слојот за апстракција на бази на податоци може да користи еден од неколку драјвери специфични за базата на податоци. Еден од драјверите што ги има на располагање е PDO MYSQL драјверот, кој му овозможува да интерфејсира со MySQL серверот.

Понекогаш луѓето ги користат термините конектор и драјвер наизменично, ова може да биде збунувачко. Во документацијата поврзана со MySQL, терминот driver е резервиран за софтвер што обезбедува дел специфичен за базата на податоци од пакет конектор.

Што е екстензија?

PHP Data Objects (PDO) extensionВо PHP документацијата ќе наидете на друг термин -

Екстензијата обично изложува API до PHP програмерот, за да им овозможи на нејзините капацитети да се користат програмски. Сепак, некои екстензии кои ја користат PHP екстензија рамката не изложуваат API до PHP програмерот.

PDO MySQL драјвер екстензијата, на пример, не изложува API до PHP програмерот, но обезбедува интерфејс до PDO слојот над неа.

Термините API и екстензија не треба да се земаат како исто значење, бидејќи екстензијата не мора нужно да изложува API до програмерот.

. PHP кодот се состои од јадро, со опционални екстензии на основната функционалност. MySQL-екстензиите на PHP, како што е mysqli екстензијата и PDO MySQL драјвер екстензијата, се имплементирани со користење на PHP екстензија рамката.

Кои се главните PHP API понуди за користење на MySQL?

  • Постојат две главни API опции при разгледување на поврзување со MySQL сервер за бази на податоци:

  • Ако вашата PHP апликација треба да комуницира со сервер за бази на податоци, ќе треба да напишете PHP код за да извршите активности како што се поврзување со серверот за бази на податоци, прашување на базата на податоци и други функции поврзани со бази на податоци. Потребен е софтвер за да се обезбеди API што ќе ја користи вашата PHP апликација, а исто така да се справи со комуникацијата помеѓу вашата апликација и серверот за бази на податоци, можеби користејќи други посредни библиотеки каде што е потребно. Овој софтвер е познат генерално како конектор, бидејќи му овозможува на вашата апликација да

PHP's mysqli Extension

Секоја има свои предности и недостатоци. Следната дискусија има за цел да даде краток вовед во клучните аспекти на секоја API.

На mysqli Што е PHP's mysqli Extension? improved екстензија, или како што понекогаш е позната, MySQL mysqli екстензија, беше развиена за да ги искористи новите функции пронајдени во MySQL системи верзии 4.1.3 и понови. На

На mysqli екстензијата е вклучена со PHP верзии 5 и понови. mysql екстензијата има голем број на придобивки, клучните подобрувања во однос на

  • екстензијата се:

  • Објектно-ориентиран интерфејс

  • Поддршка за подготвени изјави

  • Поддршка за повеќе изјави

  • Поддршка за трансакции

Покрај објектно-ориентираниот интерфејс, екстензијата обезбедува и процедурален интерфејс.

На mysqli екстензијата е изградена со помош на PHP extension framework, нејзиниот изворен код се наоѓа во директориумот ext/mysqli.

За повеќе информации за mysqli екстензијата, видете MySQLi.

Што е PDO?

PHP Data Objects, или PDO, е слој за апстракција на базата на податоци специјално за PHP апликации. PDO обезбедува конзистентен API за вашата PHP апликација без оглед на типот на сервер за базата на податоци со кој ќе се поврзе вашата апликација. Теоретски, ако ја користите PDO API, можете да го смените серверот за базата на податоци што го користите, од на пример Firebird на MySQL, и да направите само мали промени во вашиот PHP код.

Други примери на слоеви за апстракција на бази на податоци вклучуваат JDBC за Java апликации и DBI за Perl.

Иако PDO има свои предности, како што е чист, едноставен, пренослив API, неговиот главен недостаток е што не ви дозволува да ги користите сите напредни функции што се достапни во најновите верзии на MySQL серверот. На пример, PDO не ви дозволува да ја користите поддршката на MySQL за повеќе изјави.

PDO е имплементиран со помош на PHP extension framework, неговиот изворен код се наоѓа во директориумот ext/pdo.

За повеќе информации за PDO, видете го PDO.

Што е PDO MYSQL драјвер?

PDO MYSQL драјверот не е API како таков, барем од перспектива на PHP програмер. Всушност, PDO MYSQL драјверот се наоѓа во слојот под самиот PDO и обезбедува функционалност специфична за MySQL. Програмерот сè уште го повикува PDO API, но PDO го користи PDO MYSQL драјверот за да комуницира со MySQL серверот.

PDO MYSQL драјверот е еден од неколкуте достапни PDO драјвери. Други достапни PDO драјвери вклучуваат оние за Firebird и PostgreSQL серверите за бази на податоци.

PDO MYSQL драјверот е имплементиран со помош на PHP extension framework. Неговиот изворен код се наоѓа во директориумот ext/pdo_mysql. Тој не изложува API на PHP програмерот.

За повеќе информации за PDO MYSQL драјверот, видете MySQL PDO драјвер.

Што е MySQL Native Driver на PHP?

За да комуницира со MySQL серверот за базата на податоци, mysqli и PDO MYSQL драјверот користат библиотека на ниско ниво што го имплементира потребниот протокол. Во минатото, единствената достапна библиотека беше MySQL Client Library, позната и како libmysqlclient.

Сепак, интерфејсот што го презентира libmysqlclient не беше оптимизиран за комуникација со PHP апликации, бидејќи libmysqlclient првично беше дизајниран со C апликации на ум. Од оваа причина, MySQL Native Driver, mysqlnd, беше развиен како алтернатива за libmysqlclient за PHP апликации.

И двете, екстензијата mysqli и PDO MySQL драјверот може да се конфигурираат поединечно за да користат или libmysqlclient or mysqlnd. Како mysqlnd е специјално дизајниран да се користи во PHP системот, има бројни подобрувања во меморијата и брзината во однос на libmysqlclient. Силно се охрабрувате да ги искористите овие подобрувања.

MySQL Native Driver е имплементиран користејќи го PHP екстензијата framework. Изворниот код се наоѓа во ext/mysqlnd. Тој не изложува API на PHP програмерот.

Споредба на карактеристики

Следната табела ги споредува функционалностите на главните методи за поврзување со MySQL од PHP:

Споредба на MySQL API опции за PHP
    Постојат две главни API опции при разгледување на поврзување со MySQL сервер за бази на податоци: PDO (Користење PDO MySQL Driver и MySQL Native Driver)
PHP верзија воведена 5.0 5.0
MySQL статус на развој Активен развој Активен развој
API поддржува карактери Ограничено од Ограничено од
API поддржува подготвени изјави од страна на серверот Ограничено од Ограничено од
API поддржува подготвени изјави од страна на клиентот Овозможува пишување Ограничено од
API поддржува процедури за складирање Ограничено од Ограничено од
API поддржува повеќе изјави Ограничено од Најмногу
Поддржува цела MySQL 4.1+ функционалност Ограничено од Најмногу

Белешки од корисници 1 белешка

guatebus на dot gmail dot com
12 години пред
The text: "PDO does not allow you to use MySQL's support for Multiple Statements" is outdated.

Since v5.3, PHP intoduced multiple statement support into PDO (by PDO_MYSQLND driver replacing the previous PDO_MYSQL).
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.