以下のコードのリスト行で未定義のオフセットを取得します。理由はありますか?オフセットエラーが発生してもパスワードは生成されます
function generatePassword($length=6,$level=2){
list($usec, $sec) = explode(' ', microtime(true));
srand((float) $sec + ((float) $usec * 100000));
$validchars[1] = "23456789abcdefghjkmnpqrstuvwxyz";
$validchars[2] = "23456789abcdefghjkmnpqrstuvwxyzABCDEFGHIJKLMNPQRSTUVWXYZ";
$validchars[3] = "23456789_!@#$%&*()-= /abcdefghjkmnpqrstuvwxyzABCDEFGHIJKLMNPQRSTUVWXYZ_!@#$%&*()-= /";
$password = "";
$counter = 0;
while ($counter < $length) {
$actChar = substr($validchars[$level], rand(0, strlen($validchars[$level])-1), 1);
// All character must be different
if (!strstr($password, $actChar)) {
$password .= $actChar;
$counter++ ;
}
}
re
$password を有効にします。
}