Maison > Questions et réponses > le corps du texte
Comment créer un fichier d'une taille donnée (quel que soit son contenu) en PHP ?
Je dois créer un fichier de plus de 1 Go. Maximum environ 4 à 10 Go
P粉5613239752023-10-27 11:36:14
Si le contenu du fichier n'est pas pertinent, remplissez-le simplement - mais assurez-vous de ne pas générer de variables trop volumineuses pour être conservées en mémoire :
<?php $fh = fopen("somefile", 'w'); $size = 1024 * 1024 * 10; // 10mb $chunk = 1024; while ($size > 0) { fputs($fh, str_pad('', min($chunk,$size))); $size -= $chunk; } fclose($fh);
Si le fichier doit être lu par autre chose, la façon dont vous le faites dépend de ce qui doit le lire.
C.
P粉0396331522023-10-27 09:16:19
Vous pouvez utiliser fopen
和fseek
define('SIZE',100); // size of the file to be created. $fp = fopen('somefile.txt', 'w'); // open in write mode. fseek($fp, SIZE-1,SEEK_CUR); // seek to SIZE-1 fwrite($fp,'a'); // write a dummy char at SIZE position fclose($fp); // close the file.
Une fois exécuté :
$ php a.php $ wc somefile.txt 0 1 100 somefile.txt $