fapchat
@fapchat

Как fopen может тут работать?

$fname = tempnam() . getmypid();
$f = fopen($fname, "w");

Так,
tempnam()
это имя файла, но
getmypid()
- ID процесса, как тогда
fopen($fname, "w");
может работать, если в 1 параметре нужно указывать имя файла или URL, а $fname - это имя вместе с ID?
  • Вопрос задан
  • 108 просмотров
Решения вопроса 1
Adamos
@Adamos
Tempname - это не какое-то волшебное имя файла, который кто-то любезно для тебя создал.
Это строка, в которой сгенерировано случайное имя файла в системном временном каталоге (и, надо думать, сделана проверка, не существует ли такой уже - тут не уверен).
Ты не обязан использовать именно это имя - файла на самом деле еще не существует, его создает как раз fopen.
Другое дело, что, меняя это имя, ты обнуляешь проверку на уникальность - и стоит уже самостоятельно убедиться, что такого файла нет во временном каталоге, а то может получиться нехорошо...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
IgorPI
@IgorPI

w - Открывает файл только для записи; помещает указатель в начало файла и обрезает файл до нулевой длины. Если файл не существует - пробует его создать.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Ведисофт Екатеринбург
от 25 000 ₽
YCLIENTS Москва
от 200 000 до 350 000 ₽
от 300 000 до 500 000 ₽
07 мая 2024, в 15:47
12000 руб./за проект
07 мая 2024, в 15:10
1500 руб./в час
07 мая 2024, в 15:07
1500 руб./в час