Portál AbcLinuxu, 13. května 2025 22:22
$nahodny_znak = $pole_znaku[rand(0, count($pole_znaku) - 1)];Napsal jsi toho docela malo, takze tezko hadat kolik znaku ma mit vygenerovany rezec atp.
jestli to bude pole ne řetězec mi je jedno, počet znaků je 22 počet znaků na výběr je 9Děkuji
function foo($length) { $rv = ''; $chars = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i'); $limit = count($chars) - 1; for ($i = 0; $i < $length; $i++) { $rv .= $chars[rand(0, $limit)]; } return $rv; } echo foo(22);Jinak to pole s temi znaky je dobre mit nekde v nejake tride jako statickou promennou, pokud to generovani probiha vicekrat.. Lze take pouzit retezec a pote ho splitnout na pole... Zalezi na okolnostech a preferenci. Jo a taky lze misto
rand()
pouzit mt_rand()
..
$rv = '';Proč není správné použití
$rv = null; nebo $rv = false;Děkuji
function random_string($str='',$max = 20){
return (strlen($str) ? str_shuffle ( str_pad('', $max, $str) ):'');
}
function random_string2($str='',$max = 20){ $strLen = strlen($str); return ($strLen ? substr(str_shuffle ( str_pad('',ceil($max/$strLen)*$strLen, $str)),0,$max ):''); }
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.