0
我有一个设置了目录中所有文件名称的表格。我希望能够从表和目录中删除所有具有特定属性的文件。例如,如果条目没有name
那么我想删除它。我想使用的sql语句是delete from master where name = null
,但是我无法从目录中删除该文件,因为我无法确定要删除哪个文件。在我删除它们之前,有没有办法将表中的条目中的值存储在数组中?从表格中删除条目并存储已删除条目的值
我有一个设置了目录中所有文件名称的表格。我希望能够从表和目录中删除所有具有特定属性的文件。例如,如果条目没有name
那么我想删除它。我想使用的sql语句是delete from master where name = null
,但是我无法从目录中删除该文件,因为我无法确定要删除哪个文件。在我删除它们之前,有没有办法将表中的条目中的值存储在数组中?从表格中删除条目并存储已删除条目的值
做一个选择第一:
SELECT * FROM master WHERE name = null
然后存储在一个变量的结果,您可以用unlink($fileName)删除这些文件。
如果要有效地做到这一点的SQL的速度,去为你
DELETE FROM master WHERE name = null
不过,我个人将通过文件循环,并做单独像这样:
$fileNames = your_sql_select_function("SELECT filename FROM master WHERE name = null");
foreach($fileNames as $fileName) {
if(unlink($fileName)) {
your_sql_delete_function("DELETE FROM master WHERE filename = '$fileName'");
}
else {
// error report, do not delete it from database yet
// if you delete it, you won't be able to get the name later
// and the file will just hang in there until you
// handle it some other way
}
}
当然你必须将your_sql_select_function和your_sql_delete_function替换为您将用于处理mysql的函数
在删除查询之前,您可以运行select查询。然后您可以将文件名称r删除查询。 –