unlink () Недействительный аргумент функции

У меня есть файл с каталогом: PDF\9783790820874-c1.pdf
Я хотел бы удалить этот файл с помощью функции unlink() funciton. Но, похоже, не работает, если я устанавливаю каталог в переменную и отключаю ее.
Например:

 $FileToDelete = "PDF\9783790820874-c1.pdf"; unlink($FileToDelete); 

Код логичен, не так ли? но почему, когда я его выполняю, он показывает мне сообщение об ошибке:

 Warning: unlink(PDF\9783790820874-c1.pdf ): Invalid argument on line 36 

Мне нужно сохранить каталог файлов в переменную, чтобы хорошо работать с моей программой, есть ли способ ее решить?

Ваша обратная косая черта интерпретируется как последовательность побега.

http://php.net/manual/en/language.types.string.php#language.types.string.syntax.double

Либо измените его на косую черту (что работает для путей в Windows):

 $FileToDelete = "PDF/9783790820874-c1.pdf"; 

Или используйте одинарные кавычки:

 $FileToDelete = 'PDF\9783790820874-c1.pdf'; 

Или просто избегайте обратной косой черты:

 $FileToDelete = "PDF\\9783790820874-c1.pdf"; 

Я предполагаю, что вы находитесь в Windows на основе разделителя путей обратной косой черты.

Я думаю, что проблема связана с тем, что вы избегаете обратного слэш, вызывая проблемы, попробуйте:

 $FileToDelete = "PDF\\9783790820874-c1.pdf"; unlink($FileToDelete); 

Надеюсь, это исправит это для вас.

Помните, что «и» ведут себя по-другому по отношению к экранированию внутри строки. Поэтому, хотя «a \ b.pdf» может работать «a \ b.pdf», может означать нечто совершенно другое (где a и b – [некоторая строка]).