PHP file_exists() 看到文件,尽管它不存在
PHP file_exists() sees file although it doenst exist
我正在使用 PHP 的 file_exist() 函数上传文件(不要让它们重复)。不幸的是,即使文件夹为空,它也会说文件存在。当我手动上传并让它再次检查时,它确实将其识别为双重。 - 这是我的代码:
<?php
$directoy = $_POST['kategorie'];
$heading = $_POST['headline1'];
$file = $_FILES['fileToUpload']['name'];
$file_tmp = $_FILES['fileToUpload']['tmp_name'];
$endung = pathinfo($file, PATHINFO_EXTENSION);
$custom_path = 'files/'.$directoy."/".$heading.".".$endung;
$default_path = 'files/'.$directoy."/".$file;
if(empty($heading)){
$exist = file_exists($default_path);
if($exist=0){
move_uploaded_file($file_tmp, $default_path);
}else{
echo "Dateiname exisitert bereits!<br><br>";
}
}else{
$exist = file_exists($custom_path);
if($exist=0){
move_uploaded_file($file_tmp, $custom_path);
}else{
echo "Dateiname exisitert bereits!<br><br>";
}
}
?>
文件夹为空时:文件存在
当我手动输入时:文件存在
当我将它更改为 if(exist==1) 时,它只工作一次,但它对我来说没有任何意义。
提前感谢您的帮助!
php中的=和==有区别。
=
是赋值,==
是比较。
实际上,$exist=0
总是 return false,所以
if(false) {
} else{
// this will always happen
}
我正在使用 PHP 的 file_exist() 函数上传文件(不要让它们重复)。不幸的是,即使文件夹为空,它也会说文件存在。当我手动上传并让它再次检查时,它确实将其识别为双重。 - 这是我的代码:
<?php
$directoy = $_POST['kategorie'];
$heading = $_POST['headline1'];
$file = $_FILES['fileToUpload']['name'];
$file_tmp = $_FILES['fileToUpload']['tmp_name'];
$endung = pathinfo($file, PATHINFO_EXTENSION);
$custom_path = 'files/'.$directoy."/".$heading.".".$endung;
$default_path = 'files/'.$directoy."/".$file;
if(empty($heading)){
$exist = file_exists($default_path);
if($exist=0){
move_uploaded_file($file_tmp, $default_path);
}else{
echo "Dateiname exisitert bereits!<br><br>";
}
}else{
$exist = file_exists($custom_path);
if($exist=0){
move_uploaded_file($file_tmp, $custom_path);
}else{
echo "Dateiname exisitert bereits!<br><br>";
}
}
?>
文件夹为空时:文件存在 当我手动输入时:文件存在 当我将它更改为 if(exist==1) 时,它只工作一次,但它对我来说没有任何意义。
提前感谢您的帮助!
php中的=和==有区别。
=
是赋值,==
是比较。
实际上,$exist=0
总是 return false,所以
if(false) {
} else{
// this will always happen
}