Question :
If it is possible, how to increment the filename txt in php? I am working with php that I know very little, I need to increment the name of a txt file, so that a new json.txt
file is created whenever I send a file to the server. Does anyone know how to do this? I’m having to increment on the hand, I’m in json46.txt
.
$file = fopen('JSON46.txt', 'w'); // cria o arquivo json.txt
fwrite($file, $_POST['json']."rnrnrn");
Answer :
It would be something like this:
//Primeiro você precisa de uma variável que conte.
$jsonIncremento = 0;
//aqui você concatena com o nome do arquivo.
$file = fopen('JSON' .$jsonIncremento. '.txt', 'w'); // cria o arquivo json.txt
fwrite($file, $_POST['json']."rnrnrn");
//depois a cada arquivo criado é so ir incrementando ela.
$jsonIncremento++;
If you do not have a memory control of which number you need, I thought of the following solution:
- Read all files in a directory.
- I make
regex
to get all numbers in the title. - I’m looking for the largest number of them
- Return the next increment you need
$seuDiretorio = '/tmp'; /* exemplo */
$arqs = scandir($seuDiretorio);
$maior = 0;
foreach ($arqs as $arq) {
$numeroArq = preg_replace( '/[^0-9]/', '', basename($arq));
if ($numeroArq > $maior) {
$maior = $numeroArq;
}
}
echo 'Próximo Numero é '. ($maior + 1);
This way to create the next one is just to do:
$file = fopen('JSON'.($maior+1).'.txt', 'w');
With this code you need to be aware that in the directory you can only have the files you are saving.