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

Поврзувања

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

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

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

mysqli.quickstart.connections.php

Поврзувања

MySQL-серверот поддржува употреба на различни транспортни слоеви за конекции. Конекциите користат TCP/IP, Unix доменски сокети или Windows именувани цевки.

MySQL серверот поддржува употреба на различни транспортни слоеви за конекции. Конекциите користат TCP/IP, Unix доменски сокети или Windows именувани цевки. localhost Името на домаќинот 127.0.0.1 има посебно значење. Тоа е поврзано со употребата на Unix доменски сокети. За да се отвори TCP/IP конекција до localhost, localhost.

мора да се користи наместо името на домаќинот

<?php

$mysqli = new mysqli("localhost", "user", "password", "database");

echo $mysqli->host_info . "\n";

$mysqli = new mysqli("127.0.0.1", "user", "password", "database", 3306);

echo $mysqli->host_info . "\n";

Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред

Localhost via UNIX socket
127.0.0.1 via TCP/IP

Пример #1 Посебно значење на localhost

Стандардни вредности на параметрите за конекција

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

mysqli.default_host=192.168.2.27
mysqli.default_user=root
mysqli.default_pw=""
mysqli.default_port=3306
mysqli.default_socket=/tmp/mysql.sock

Пример #2 Поставување стандардни вредности

Резултирачките вредности на параметрите потоа се предаваат на библиотеката на клиентот што ја користи екстензијата. Ако библиотеката на клиентот открие празни или непоставени параметри, тогаш може да се врати на вредностите вградени во библиотеката.

Стандардни вредности на вградената библиотека за конекција localhostАко вредноста на домаќинот е непоставена или празна, тогаш библиотеката на клиентот ќе се врати на Unix сокет конекција на /tmp/mysql.sock . Ако сокетот е непоставен или празен, и се бара Unix сокет конекција, тогаш се обидува конекција до стандардниот сокет на

се обидува. . На Windows системи, името на домаќинот \\.\pipe\MySQL.

If neither a Unix domain socket-based nor a Windows named pipe-based connection is to be established and the port parameter value is unset, the library will default to port 3306.

На mysqlnd Ако не се воспостави ниту Unix доменска сокет базирана ниту Windows именувана цевка базирана конекција и вредноста на параметарот port е непоставена, библиотеката стандардно ќе го постави портот

библиотеката и MySQL Client Library (libmysqlclient) применуваат иста логика за одредување на стандардните вредности.

Опции за конекција

Опциите за конекција се достапни за, на пример, поставување на иницијални команди кои се извршуваат при конекција, или за барање употреба на одреден карактер сет. Опциите за конекција мора да бидат поставени пред да се воспостави мрежна конекција. mysqli_init() or API не вклучува емулација за емулација на подготвени изјави од страна на клиентот., поставувајќи ги бараните опции со Пример #5 Оригинални типови на податоци со mysqlnd и опција за поврзување, и воспоставувајќи ја мрежната врска со mysqli::options().

Базени на врски

Екстензијата mysqli поддржува постојани врски со базата на податоци, што е посебен вид на врски во базен. Стандардно, секоја врска со базата на податоци отворена од скрипта или експлицитно се затвора од корисникот за време на извршувањето или автоматски се ослободува на крајот од скриптата. Постојаната врска не е. Наместо тоа, се става во базен за подоцнежна повторна употреба, ако се отвори врска со истиот сервер користејќи го истото корисничко име, лозинка, приклучок, порта и стандардна база на податоци. Повторната употреба заштедува трошоци за поврзување.

Секој PHP процес користи свој базен за врски mysqli. Во зависност од моделот на распоредување на веб-серверот, PHP процес може да опслужува едно или повеќе барања. Затоа, врска во базен може да се користи од една или повеќе скрипти последователно.

Постојана врска

Ако не се најде неискористена постојана врска за дадена комбинација на хост, корисничко име, лозинка, приклучок, порта и стандардна база на податоци во базенот за врски, тогаш mysqli отвора нова врска. Употребата на постојани врски може да се овозможи и оневозможи со помош на PHP директивата mysqli.allow_persistent. Вкупниот број на врски отворени од скрипта може да се ограничи со mysqli.max_links. Максималниот број на постојани врски по PHP процес може да се ограничи со mysqli.max_persistent. Ве молиме имајте предвид дека веб-серверот може да создаде многу PHP процеси.

A common complaint about persistent connections is that their state is not reset before reuse. For example, open and unfinished transactions are not automatically rolled back. But also, authorization changes which happened in the time between putting the connection into the pool and reusing it are not reflected. This may be seen as an unwanted side-effect. On the contrary, the name persistent може да се сфати како ветување дека состојбата е зачувана.

Екстензијата mysqli поддржува двете толкувања на постојана врска: зачувана состојба и ресетирање на состојбата пред повторна употреба. Стандардно е ресетирање. Пред да се повторно искористи постојана врска, екстензијата mysqli имплицитно повикува MySQL серверот поддржува употреба на различни транспортни слоеви за конекции. Конекциите користат TCP/IP, Unix доменски сокети или Windows именувани цевки. за да ја ресетира состојбата. Постојаната врска се појавува на корисникот како да е штотуку отворена. Нема видливи артефакти од претходните употреби.

На MySQL серверот поддржува употреба на различни транспортни слоеви за конекции. Конекциите користат TCP/IP, Unix доменски сокети или Windows именувани цевки. повикот е скапа операција. За најдобра изведба, корисниците можеби сакаат повторно да ја компилираат екстензијата со компајлирачкиот флаг MYSQLI_NO_CHANGE_USER_ON_PCONNECT да биде поставен.

Оставено е на корисникот да избере помеѓу безбедно однесување и најдобра изведба. И двете се валидни цели за оптимизација. За леснотија на користење, безбедното однесување е направено стандардно на сметка на максималната изведба.

Види исто така

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

sdfjsdfjsd на gmail точка ком
hello at tzi dot fr
<?php
// Database credentials
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

// 1. Create database connection
$conn = new mysqli($servername, $username, $password, $dbname);

// 2. Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully.<br><br>";

// Recommendation: Set character set to UTF-8 (for proper special character rendering)
$conn->set_charset("utf8mb4");

// ==========================================
// EXAMPLE 1: Inserting data into the database (INSERT)
// ==========================================
// Assuming you have a 'users' table with 'first_name', 'last_name', and 'email' columns
$sql_insert = "INSERT INTO users (first_name, last_name, email) 
               VALUES ('John', 'Doe', '[email protected]')";

if ($conn->query($sql_insert) === TRUE) {
    // Get the ID of the last inserted row
    $last_id = $conn->insert_id;
    echo "✅ New record created successfully. The ID of the new user is: " . $last_id . "<br><br>";
} else {
    echo "❌ Error inserting data: " . $conn->error . "<br><br>";
}

echo "<hr>";

// ==========================================
// EXAMPLE 2: Reading data from the database (SELECT)
// ==========================================
$sql_select = "SELECT id, first_name, last_name FROM users";
$result = $conn->query($sql_select);

// Check if the query returned any rows
if ($result->num_rows > 0) {
    echo "<strong>User List:</strong><br>";
    // Loop through the results row by row using a while loop
    while($row = $result->fetch_assoc()) {
        echo "ID: " . $row["id"] . " | Name: " . $row["first_name"] . " " . $row["last_name"] . "<br>";
    }
} else {
    echo "No records found in the database.";
}

// 3. Close the connection
// It is good practice to close the connection at the end of the script
$conn->close();
?>
gemik850 на gmail точка ком
hello at tzi dot fr
<?php
// Database credentials
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

// 1. Create database connection
$conn = mysqli_connect($servername, $username, $password, $dbname);

// 2. Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully.<br><br>";

// Recommendation: Set character set to UTF-8 (for proper special character rendering)
mysqli_set_charset($conn, "utf8mb4");

// ==========================================
// EXAMPLE 1: Inserting data into the database (INSERT)
// ==========================================
// Assuming you have a 'users' table with 'first_name', 'last_name', and 'email' columns
$sql_insert = "INSERT INTO users (first_name, last_name, email) 
               VALUES ('John', 'Doe', '[email protected]')";

if (mysqli_query($conn, $sql_insert)) {
    // Get the ID of the last inserted row
    $last_id = mysqli_insert_id($conn);
    echo "✅ New record created successfully. The ID of the new user is: " . $last_id . "<br><br>";
} else {
    echo "❌ Error inserting data: " . mysqli_error($conn) . "<br><br>";
}

echo "<hr>";

// ==========================================
// EXAMPLE 2: Reading data from the database (SELECT)
// ==========================================
$sql_select = "SELECT id, first_name, last_name FROM users";
$result = mysqli_query($conn, $sql_select);

// Check if the query returned any rows
if (mysqli_num_rows($result) > 0) {
    echo "<strong>User List:</strong><br>";
    // Loop through the results row by row using a while loop
    while($row = mysqli_fetch_assoc($result)) {
        echo "ID: " . $row["id"] . " | Name: " . $row["first_name"] . " " . $row["last_name"] . "<br>";
    }
} else {
    echo "No records found in the database.";
}

// 3. Close the connection
// It is good practice to close the connection at the end of the script
mysqli_close($conn);
?>
На оваа страница

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

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

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

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

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