私はphpで文字列ランダマイザーメソッドに取り組んでいます。メソッドの外では、すべてが正常に行われます。ただし、メソッドの内部では、次のエラーが発生します。
Warning: mt_rand() [function.mt-rand]: max(0) is smaller than min(1) in /home/content/44/10902444/html/makepage.php on line 14
メソッドのコードは次のとおりです。
function roll()
{
$dir = "s/";
for($i = 0; $i < 5; $i++)
{
$pick = mt_rand(1, strlen($validChars));
$charPick = $validChars[$pick-1];
$dir .= $charPick;
}
return $dir;
}
私はそれを次のように呼んでいます:
$url = roll();
while(is_dir($url))
{
$url = roll();
}
私は Java プログラマーとして、自分が間違ったことをしていることを知っています。それが何であるかではありません;)どんな助けも大歓迎です。応答してくれた人に前もって感謝します!
編集:スコープの問題があることはわかっているため、の宣言を$validChars
メソッドに移動しました。それでもエラーが発生します:
Parse error: syntax error, unexpected T_STRING in /home/content/44/10902444/html/makepage.php on line 20