als het bestand al bestaat verander de naam
René schreef op 13.04.2009 17:28:
@Thomas:
't onderstaande script, maakt elke keer als je hem aanroept,
0000.txt aangemaakt 43 Bytes
0001.txt aangemaakt 43 Bytes
0002.txt aangemaakt 43 Bytes
enz. enz.
Het bestand eerst openen, en dan weer sluiten is ook onnodig, wanneer je gebruik maakt van de file_put_contents function.
chmod($filename , 0776); is niet nodig, want het bestand wordt aangemaakt door de user waaronder apache/php draait.
wel is het nodig het resultaat af te vangen $size=file_put_contents($filenaam, $text); $size krijgt de waarde -1 wanner het mislukt is, of een positief getal wanneer het gelukt is en dit is dan gelijk aan de omvang in bytes.
't onderstaande script, maakt elke keer als je hem aanroept,
0000.txt aangemaakt 43 Bytes
0001.txt aangemaakt 43 Bytes
0002.txt aangemaakt 43 Bytes
enz. enz.
Het bestand eerst openen, en dan weer sluiten is ook onnodig, wanneer je gebruik maakt van de file_put_contents function.
chmod($filename , 0776); is niet nodig, want het bestand wordt aangemaakt door de user waaronder apache/php draait.
wel is het nodig het resultaat af te vangen $size=file_put_contents($filenaam, $text); $size krijgt de waarde -1 wanner het mislukt is, of een positief getal wanneer het gelukt is en dit is dan gelijk aan de omvang in bytes.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<?
$nummer=0;
$filenaam=sprintf("%'04s", $nummer).".txt";
while(file_exists($filenaam) ) {
$nummer++;
$filenaam=sprintf("%'04s", $nummer).".txt";
}
$text = "Dit is de text die in de textfile zal komen";
$size=file_put_contents($filenaam, $text);
echo $filenaam." aangemaakt ". $size. " Bytes";
?>
$nummer=0;
$filenaam=sprintf("%'04s", $nummer).".txt";
while(file_exists($filenaam) ) {
$nummer++;
$filenaam=sprintf("%'04s", $nummer).".txt";
}
$text = "Dit is de text die in de textfile zal komen";
$size=file_put_contents($filenaam, $text);
echo $filenaam." aangemaakt ". $size. " Bytes";
?>
heel erg bedankt het werkt nu :)
thomas schreef op 13.04.2009 17:34:
No Problemo :)heel erg bedankt het werkt nu :)
Hoewel het handiger is dit soort dingen in een dbase te stoppen. want stel je voor je hebt 99999 van dit soort bestandjes staan. dan moet php 99999 keer kijken of dat bestand bestaat enz. vreet nogal CPU resource. Plus het probleem dat wanneer 2 clients tegelijk deze functie aanroepen dat bijvoorbeeld 0005.txt 2 x tegelijk wordt gevuld met informatie en 1 van de 2 ben je dan kwijt.
Grts.
René
René schreef op 13.04.2009 17:44:
Hoewel het handiger is dit soort dingen in een dbase te stoppen. want stel je voor je hebt 99999 van dit soort bestandjes staan. dan moet php 99999 keer kijken of dat bestand bestaat enz. vreet nogal CPU resource. Plus het probleem dat wanneer 2 clients tegelijk deze functie aanroepen dat bijvoorbeeld 0005.txt 2 x tegelijk wordt gevuld met informatie en 1 van de 2 ben je dan kwijt.
Grts.
René
thomas schreef op 13.04.2009 17:34:
No Problemo :)heel erg bedankt het werkt nu :)
Hoewel het handiger is dit soort dingen in een dbase te stoppen. want stel je voor je hebt 99999 van dit soort bestandjes staan. dan moet php 99999 keer kijken of dat bestand bestaat enz. vreet nogal CPU resource. Plus het probleem dat wanneer 2 clients tegelijk deze functie aanroepen dat bijvoorbeeld 0005.txt 2 x tegelijk wordt gevuld met informatie en 1 van de 2 ben je dan kwijt.
Grts.
René
ik zal het proberen