is_file рекомендуется использовать для проверки файлов и неудобств может быть для ваших маршрутов, изменение
$file = $_SERVER['DOCUMENT_ROOT'].'/mysite/test_file.txt';
is_file и file_exists две родных PHP функции, которые могут быть использованы для проверки конкретного файла существует или нет. Хотя их имена довольно описательный, вы должны знать, что:
- is_file возвращает истину, если путь к последней функции фактически существующий файл.
- file_exists возвращает истинное ли прошлое путь к файлу в качестве действительного каталога (используйте is_dir, если вы хотите конкретно проверить, если путь является каталогом, но не файл).
Это различие очень важно. Если ваша цель - это не только файлы и каталоги, то is_file - это ваша функция. Если вы хотите проверить папку или файл индифферентно выбрать file_exists
пример:
$file ='mysite/public_html/folder/file.php';
$directory ='/mysite/public_html/folder/';
$exists = is_file($file);//return true
$exists = is_file($directory); //return false
$exists = file_exists($file);//return true
$exists = file_exists($directory); //return true
попробовать с абсолютным путем вместо относительного –
внушения, если вы хотите, чтобы проверить, если он на самом деле является файлом и существует, вместо этого используйте 'is_file()'. 'file_exists()' также вернет true, если путь является папкой ... и что @ManinderpreetSingh сказал .. –
@MagnusEriksson Вам нужно использовать оба, чтобы избежать предупреждения is_file(). Редактировать: о, по-видимому, нет! https://3v4l.org/L9ppf извините! – jedifans