PHP создает случайный файл tmp и получает полный путь После этого: $temp = tmpfile(); fwrite($temp, "writing to tempfile"); Я хотел бы получить полный путь к файлу $temp, который создал tmpfile. Что мне нужно сделать, чтобы получить эту информацию? Ответ 1 $path = tempnam(sys_get_temp_dir(), 'prefix'); См. этот пример. Ответ 2 tmpfile возвращает указатель на файл. Чтобы получить базовый путь, вам нужно задать поток для своих метаданных: $file = tmpfile(); $path = stream_get_meta_data($file)['uri']; // eg: /tmp/phpFx0513a Преимущество подхода tmpfile? PHP автоматически удаляет $path, когда $file выходит за рамки. С помощью tempnam вы должны вручную удалить созданный файл. Ответ 3 Использовать функцию tempnam вместо?
Ответ 2 tmpfile возвращает указатель на файл. Чтобы получить базовый путь, вам нужно задать поток для своих метаданных: $file = tmpfile(); $path = stream_get_meta_data($file)['uri']; // eg: /tmp/phpFx0513a Преимущество подхода tmpfile? PHP автоматически удаляет $path, когда $file выходит за рамки. С помощью tempnam вы должны вручную удалить созданный файл.