Здесь нет ввода пользователя, но я все еще хочу убедиться, что это безопасно:
<?php system('rm /tmp/my-cache/3600/* -f');
Есть ли какие-либо обстоятельства, которые могут привести к удалению файлов из другого каталога? Например, что произойдет, если этот каталог по какой-то причине не существует?
Я думаю, что это безопасно, но я был укушен подобным (но совершенно другим) фрагментом кода ранее, в задании cron, которое выполняется каждую минуту:
cd /tmp/my-cache/3600
find . -maxdepth 1 -mmin +61 -type f -delete
При некоторых обстоятельствах эта папка не существовала, что означало, что find
удалил все файлы в домашнем каталоге вместо этого!
(Исправление заключалось в том, чтобы обернуть его внутри блока if [ -d "/tmp/my-cache/3600" ]; then
/ fi
)
Как я уже сказал, я думаю, что вызов php system
безопасен, я просто хочу проверить, нет ли смягчающего обстоятельства, о котором я не знаю, что может вызвать проблемы?