webForumDet fria alternativet

Autogenerera ett filnamn

PHPur PHP

3 svar · 243 visningar · startad av sonix

sonixMedlem sedan aug. 20024 inlägg
#1

Hur ska man bära sig åt för att autogenerera ett filnamn som slutar på .jpg, alltså det ska slumpas fram?

MatteMedlem sedan aug. 20002 975 inlägg
#2

Kanske något på det här hållet:

<?php 

// Ta fram en array med tecken att slumpa ur.
// Kan skrivas rakt upp och ner eller som här, 
// automatgenereras 0-9, A-Z, a-z. 
for ($i=48; $i<=57; $i++) $sign[] = chr($i); 
for ($i=65; $i<=90; $i++) $sign[] = chr($i);
for ($i=97; $i<=120; $i++) $sign[] = chr($i);

// Sätta startvärde i slumptabellen.
list($usec, $sec) = explode(' ', microtime());
mt_srand((float) $sec + ((float) $usec * 100000));

// Slumpa namn 8 tecken + .jpg
$name = "";
$max = sizeof($sign)-1; // max slumptal
for ($i=0; $i<8; $i++){
  $name .= $sign[mt_rand(0, $max)];
}
$name .= ".jpg";

echo $name;

?>
sonixMedlem sedan aug. 20024 inlägg
#3

tackar

D-M_RMedlem sedan aug. 2002114 inlägg
#4

mikrosekund då det skapas är annars fint. då får du aldrig (så länge inte någon flyttar bak klockan och någon råkar skapa fil exakt samma mikrosekund eller att två skapar fil exakt på samma mikrosekund) samma å behöver inte slumpa...

133 ms totalt · 3 externa anrop · v20260731065814-full.29ac60f6
130 ms — hämta forumlista (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)