對於驗證碼,下面的程式碼產生一個 5 位數。我希望它是 4 位數字。我該怎麼做。
// generate random numbers $sayilar = ''; for ($x = 15; $x <= 95; $x += 20) { $sayilar .= ($sayi = rand(0, 9)); imagechar($image, rand(3, 5), $x, rand(2, 14), $sayi, $textcolor); }
P粉3176793422024-02-26 13:15:39
您的循環定義很複雜,因為您在其中載入了許多不必要的邏輯。修改/維護會更清晰、更簡單:
$sayilar = ''; $lpad = 15; $offset = 20; for ($x = 0; $x < 4; $x) { $sayilar .= ($sayi = rand(0, 9)); $xpos = $x * $offset $lpad; imagechar($image, rand(3, 5), $xpos, rand(2, 14), $sayi, $textcolor); }