PHP: tmpfile - Manual

downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

touch tempnam

Last updated: Sat, 27 Jan 2007

view this page in

# tmpfile

(PHP 3 >= 3.0.13, PHP 4, PHP 5)

tmpfile -- Создаёт временный файл

## Описание

resource tmpfile ( void )

Создаёт временный файл с уникальным именем, открывая его в режиме чтения и записи (w+), и возвращает файловый указатель таким же образом, как это делает fopen(). Этот файл автоматически удаляется после закрытия (использования fclose()) или после завершения работы скрипта).

Для дополнительной информации, обратитесь к документации вашей системы по функции `tmpfile(3)`, а также к заголовочному файлу `stdio.h`.

Пример 1. Пример использования функции tmpfile()

`<?php
$temp = tmpfile();
fwrite($temp, "записываем во временный файл");
fseek($temp, 0);
echo fread($temp, 1024);
fclose($temp); // происходит удаление файла
?>`

Результат выполнения данного примера:

    записываем во временный файл

См. также описание функции tempnam().

add a note User Contributed Notes
tmpfile
05-Sep-2006 11:53
`By the way, this function is really useful for libcurl's CURLOPT_PUT feature if what you're trying to PUT is a string. For example:
/* Create a cURL handle. */
$ch = curl_init();
/* Prepare the data for HTTP PUT. */
$putString = "Hello, world!";
$putData = tmpfile();
fwrite($putData, $putString);
fseek($putData, 0);
/* Set cURL options. */
curl_setopt($ch, CURLOPT_URL, "http://www.example.com");
curl_setopt($ch, CURLOPT_PUT, true);
curl_setopt($ch, CURLOPT_INFILE, $putData);
curl_setopt($ch, CURLOPT_INFILESIZE, strlen($putString));
/* ... (other curl options) ... */
/* Execute the PUT and clean up */
$result = curl_exec($ch);
fclose($putData);
curl_close($ch);`
03-Aug-2006 06:05
`fseek() is important because if you forget about it you will upload empty file...
i had sth like that ^_^`
chris [at] pureformsolutions [dot] com
04-Oct-2005 12:14
`I found this function useful when uploading a file through FTP. One of the files I was uploading was input from a textarea on the previous page, so really there was no "file" to upload, this solved the problem nicely:
<?php
# Upload setup.inc
$fSetup = tmpfile();
fwrite($fSetup,$setup);
fseek($fSetup,0);
if (!ftp_fput($ftp,"inc/setup.inc",$fSetup,FTP_ASCII)) {
echo "<br /><i>Setup file NOT inserted</i><br /><br />";
}
fclose($fSetup);
?>
The $setup variable is the contents of the textarea.
And I'm not sure if you need the fseek($temp,0); in there either, just leave it unless you know it doesn't effect it.`
add a note
touch tempnam

Last updated: Sat, 27 Jan 2007
show source | credits | stats | sitemap | contact | advertising | mirror sites
Copyright © 2001-2007 The PHP Group
All rights reserved.
This mirror generously provided by: Yahoo! Inc.
Last updated: Sat Mar 10 09:32:46 2007 PST