Ideiglenes fájl létrehozása

feladat
A fájl ideiglenes adattárolásra van szüksége.

A megoldás
Hívja a tmpfile () függvényt, ha a fájlt csak a parancsfájl végrehajtása alatt tárolja:

$ temp_fh = tmpfile ();
// adjon meg adatokat az ideiglenes fájlhoz
fputs ($ temp_fh, "A pontos idő" .strftime ('% c'));
// a fájl törlődik a szkript végén
kilépés (1);

Ha tetszőleges fájlt szeretne létrehozni, de a parancsfájl végrehajtása után kell tárolnia, a tempnam () függvény segítségével kell létrehoznia a fájlnevet, majd hívja a fopen () függvényt:

$ tempfilename = tempnam ('/ tmp', 'data');
$ temp_fh = fopen ($ tempfilename, 'w') vagy die ($ php_errormsg);
fputs ($ temp_fh, "A pontos idő" .strftime ('% c'));
fclose ($ temp_fh) vagy die ($ php_errormsg);

megbeszélés
A tmpfile () függvény létrehoz egy egyedi nevet tartalmazó fájlt, és visszaadja annak leíróját. A fájl törlésre kerül, ha az fclose () függvényt erre a fájlleíróra hívják, vagy a szkript végrehajtja a végrehajtást.

A második esetben a fájlnév a tempnam () függvényből származik. Két argumentumot igényel: az első a könyvtár, a második a fájlnév előtag.


Ha a könyvtár nem létezik, vagy nem írható rá, a tempnam () függvény a TMPDIR környezeti változó által UNIX rendszerben vagy a TMP környezeti változóban megadott ideiglenes rendszermenetet használja a Windows rendszerben. Például:

$ tempfilename = tempnam ('/ tmp', 'data');
print "Az ideiglenes adatok $ tempfilename-ben kerülnek tárolásra";
Az ideiglenes adatokat a / tmp / data-GawVoL tárolja

A PHP által létrehozott ideiglenes fájlnevek olyanok, hogy a tempnam () függvény létrehozása ténylegesen létrehozza a kívánt fájlt, de üresen hagyja, ha a parancsfájl nem nyitja meg közvetlenül a fájlt. Ez biztosítja, hogy egyetlen másik program ne hozzon létre ugyanazt a nevet tartalmazó fájlt a hívás tempnam () és a fopen () függvény meghívása között.

Kapcsolódó cikkek