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

Избор на API

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

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

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

mysqlinfo.api.choosing.php

Избор на API

PHP нуди различни API за поврзување со MySQL. Подолу ги прикажуваме API-те обезбедени од mysqli и PDO екстензиите. Секое парче код создава врска со MySQL сервер кој работи на "example.com" користејќи го корисничкото име "user" и лозинката "password". И се извршува прашалник за поздравување на корисникот.

Пример #1 Споредба на MySQL API

<?php
// mysqli
$mysqli = new mysqli("example.com", "user", "password", "database");
$result = $mysqli->query("SELECT 'Hello, dear MySQL user!' AS _message FROM DUAL");
$row = $result->fetch_assoc();
echo
htmlentities($row['_message']);

// PDO
$pdo = new PDO('mysql:host=example.com;dbname=database', 'user', 'password');
$statement = $pdo->query("SELECT 'Hello, dear MySQL user!' AS _message FROM DUAL");
$row = $statement->fetch(PDO::FETCH_ASSOC);
echo
htmlentities($row['_message']);

Пример #2 Споредба на подготвени изјави

<?php
// mysqli
$mysqli = new mysqli("example.com", "user", "password", "database");
$statement = $mysqli->prepare("SELECT District FROM City WHERE Name=?");
$statement->execute(["Amersfoort"]);
$result = $statement->get_result();
$row = $result->fetch_assoc();
echo
htmlentities($row['District']);

// PDO
$pdo = new PDO('mysql:host=example.com;dbname=database', 'user', 'password');
$statement = $pdo->prepare("SELECT District FROM City WHERE Name=?");
$statement->execute(["Amersfoort"]);
$row = $statement->fetch(PDO::FETCH_ASSOC);
echo
htmlentities($row['District']);

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

Вкупните перформанси на двете екстензии се сметаат за исти. Иако перформансите на екстензијата придонесуваат само мал дел од вкупното време на извршување на PHP веб барање. Често, влијанието е ниско, дури 0.1%.

    ext/mysqli PDO_MySQL
PHP верзија воведена 5.0 5.1
Вклучено со PHP 7.x и 8.x Ограничено од Ограничено од
Статус на развој Активен Активен
Животен циклус Активен Активен
Препорачано за нови проекти Ограничено од Ограничено од
ООП Интерфејс Ограничено од Ограничено од
Процедурален Интерфејс Ограничено од Овозможува пишување
API поддржува неблокирачки, асинхрони прашалници со mysqlnd Ограничено од Овозможува пишување
Постојани врски Ограничено од Ограничено од
API поддржува карактери Ограничено од Ограничено од
API поддржува подготвени изјави од страна на серверот Ограничено од Ограничено од
API поддржува подготвени изјави од страна на клиентот Овозможува пишување Ограничено од
API поддржува процедури за складирање Ограничено од Ограничено од
API поддржува повеќе изјави Ограничено од Најмногу
API поддржува Трансакции Ограничено од Ограничено од
Трансакциите можат да се контролираат со SQL Ограничено од Ограничено од
Поддржува цела MySQL 5.1+ функционалност Ограничено од Најмногу

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

alvaro на demogracia точка com
пред 13 години
Apart from the feature list, I suggest you try out both MySQLi and PDO and find out what API design you like most. MySQLi is more powerful and probably more complex to learn. PDO is more elegant and has the advantage that you only need to learn one PHP API if you need to work with different DBMS in the future.
На оваа страница

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

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

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

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

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