Lee y escribe archivos temporales

Aunque Cloud Storage es la solución recomendada para leer y escribir archivos en App Engine, si tu aplicación solo necesita escribir archivos temporales, puedes usar los métodos estándar de PHP 7+ para escribir archivos en un directorio denominado /tmp.

Todos los archivos en este directorio se almacenan en la RAM de la instancia. Por lo tanto, escribir en /tmp consume la memoria del sistema. Además, los archivos ubicados en el directorio /tmp solo están disponibles para la instancia de la app que creó los archivos. Si se borra la instancia, se borran los archivos temporales.

Si deseas escribir un archivo temporal en el almacenamiento permanente, crea el archivo con la versión de tempnam() de App Engine. Esta versión de tempnam() muestra un archivo temporal en la memoria que se puede escribir en una solución de almacenamiento permanente, como los depósitos de Cloud Storage.

En el siguiente ejemplo, se muestra cómo crear un archivo en la memoria con tempnam() y, luego, escribir en el archivo mediante file_put_contents() y fwrite():

<?php
$dir = sys_get_temp_dir();
$tmp = tempnam($dir, "foo");
file_put_contents($tmp, "hello");
$f = fopen($tmp, "a");
fwrite($f, " world");
fclose($f);
echo file_get_contents($tmp);

Este ejemplo producirá el siguiente resultado:

hello world