php实现删除
PHP 实现删除功能的方法
删除文件
使用 unlink() 函数可以删除指定的文件。该函数接受文件路径作为参数,成功删除返回 true,失败返回 false。
$file = 'path/to/file.txt';
if (file_exists($file)) {
if (unlink($file)) {
echo "文件删除成功";
} else {
echo "文件删除失败";
}
} else {
echo "文件不存在";
}
删除目录
使用 rmdir() 函数可以删除空目录。若要删除非空目录,需先递归删除目录中的内容。
function deleteDirectory($dir) {
if (!file_exists($dir)) {
return true;
}
if (!is_dir($dir)) {
return unlink($dir);
}
foreach (scandir($dir) as $item) {
if ($item == '.' || $item == '..') {
continue;
}
if (!deleteDirectory($dir . DIRECTORY_SEPARATOR . $item)) {
return false;
}
}
return rmdir($dir);
}
$directory = 'path/to/directory';
if (deleteDirectory($directory)) {
echo "目录删除成功";
} else {
echo "目录删除失败";
}
删除数据库记录
通过 SQL 的 DELETE 语句可以删除数据库中的记录。以下是一个使用 PDO 的示例:
try {
$pdo = new PDO("mysql:host=localhost;dbname=test", "username", "password");
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$id = 1;
$stmt = $pdo->prepare("DELETE FROM users WHERE id = :id");
$stmt->bindParam(':id', $id);
$stmt->execute();
echo "记录删除成功";
} catch (PDOException $e) {
echo "错误: " . $e->getMessage();
}
删除数组元素
使用 unset() 函数可以删除数组中的指定元素。
$array = ['a', 'b', 'c'];
unset($array[1]); // 删除索引为1的元素
print_r($array); // 输出: Array ( [0] => a [2] => c )
使用 array_splice() 可以删除数组元素并重新索引。
$array = ['a', 'b', 'c'];
array_splice($array, 1, 1); // 从索引1开始删除1个元素
print_r($array); // 输出: Array ( [0] => a [1] => c )
删除会话变量
使用 unset() 或 session_unset() 可以删除会话变量。

session_start();
unset($_SESSION['key']); // 删除单个会话变量
session_unset(); // 删除所有会话变量
session_destroy(); // 销毁整个会话
以上方法涵盖了 PHP 中常见的删除操作,适用于文件、目录、数据库记录、数组元素和会话变量等场景。






