English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Функция mysqli_stmt_close() в PHP заканчивает подготовленную инструкцию.
mysqli_stmt_close()Функция принимает объект подготовленной инструкции (открытой ранее) в качестве параметра и затем закрывает её.
Вы не можете использовать эту функцию для закрытияПостоянное соединение.
mysqli_stmt_close($stmt);
Номер | Параметры и описание |
---|---|
1 | stmt(обязателен) Это объект подготовленной инструкции. |
Функция PHP mysqli_stmt_close() возвращает логическое значение, в случае успехаtrue, в случае неудачиfalse.
Эта функция была最初 введена в PHP версии 5 и может использоваться во всех более поздних версиях.
Предположим, что мы уже создали таблицу employee в базе данных MySQL, содержащую следующее:
mysql> select * from employee; +------------+--------------+------+------+--------+ | FIRST_NAME | LAST_NAME | AGE | SEX | INCOME | +------------+--------------+------+------+--------+ | Vinay | Bhattacharya | 20 | M | 16000 | | Sharukh | Sheik | 25 | M | 18300 | | Trupthi | Mishra | 24 | F | 36000 | | Sheldon | Cooper | 25 | M | 12256 | | Sarmista | Sharma | 28 | F | 15000 | +------------+--------------+------+------+--------+ 5 строк в наборе (0.00 сек)
Ниже приведен пример демонстрацииmysqli_stmt_close()Использование функции (стиль面向 процессов)-
<?php $con = mysqli_connect("localhost", "root", "password", "mydb"); $stmt = mysqli_prepare($con, "UPDATE employee set INCOME=INCOME-? where INCOME>?"); mysqli_stmt_bind_param($stmt, "si", $reduct, $limit); $limit = 16000; $reduct = 5000; //Выполнение инструкции mysqli_stmt_execute($stmt); print("Records Updated......\n"); //Закрытие инструкции mysqli_stmt_close($stmt); //Закрытие подключения mysqli_close($con); ?>
Вывод результатов
Records Updated......
После выполнения вышеуказанного кода:employeeСодержимое таблицы是这样的:
mysql> select * from employee; +------------+--------------+------+------+--------+ | FIRST_NAME | LAST_NAME | AGE | SEX | INCOME | +------------+--------------+------+------+--------+ | Vinay | Bhattacharya | 20 | M | 16000 | | Sharukh | Sheik | 25 | M | 13300 | | Trupthi | Mishra | 24 | F | 31000 | | Sheldon | Cooper | 25 | M | 12256 | | Sarmista | Sharma | 28 | F | 15000 | +------------+--------------+------+------+--------+ 5 строк в наборе (0.00 сек)
В стилистике面向对象的 программирования грамматика этой функции такая:$stmt->close();。Вот пример этой функции в стилистике面向对象的 программирования;
<?php //Установить соединение $con = new mysqli("localhost", "root", "password", "mydb"); //Создать таблицу $con -> query("Создать таблицу myplayers(ID INT, First_Name VARCHAR(255), Last_Name VARCHAR(255), Place_Of_Birth VARCHAR(255), Country VARCHAR(255))"); print("Создание таблицы.....\n"); //Вставка значений в таблицу с помощью подготовленной инструкции $stmt = $con->prepare('INSERT INTO myplayers values(?, ?, ?, ?, ?)'); $stmt->bind_param('issss', $id, $fname, $lname, $pob, $country); $id = 1; $fname = 'Shikhar'; $lname = 'Dhawan'; $pob = 'Delhi'; $country = 'India'; //Выполнение инструкции $stmt->execute(); //Закрытие инструкции $stmt->close(); //Закрытие подключения $con->close(); ?>
Вывод результатов
Создание таблицы.....
Вы также можете закрыть, используяmysqli_stmt_prepare()Инструкции, созданные функцией -
<?php $con = mysqli_connect("localhost", "root", "password", "mydb"); $query = "CREATE TABLE Test(Name VARCHAR(255), AGE INT)"; mysqli_query($con, $query); print("Создание таблицы.....\n"); //Инициализация инструкции $stmt = mysqli_stmt_init($con); mysqli_stmt_prepare($stmt, 'INSERT INTO Test values(?, ?)'); mysqli_stmt_bind_param($stmt, 'si', $Name, $Age); $Name = 'Raju'; $Age = 25; print("Вставка записей....."); //Выполнение инструкции mysqli_stmt_execute($stmt); //Закрытие инструкции mysqli_stmt_close($stmt); //Закрытие подключения mysqli_close($con); ?>
Вывод результатов
Создание таблицы..... Вставка записей.....