PHP生成驗證碼的方法有多種,以下是其中一種常見的方法:
// 創建一個 100x30 像素的空白圖片
$image = imagecreatetruecolor(100, 30);
// 生成隨機驗證碼字符串
$code = '';
for ($i = 0; $i < 4; $i++) {
$code .= chr(rand(65, 90));
}
// 設置驗證碼圖片的背景色和文字顏色
$bgColor = imagecolorallocate($image, 255, 255, 255); // 白色
$textColor = imagecolorallocate($image, 0, 0, 0); // 黑色
// 填充背景色
imagefill($image, 0, 0, $bgColor);
// 在圖片上繪制驗證碼文字
imagettftext($image, 20, 0, 10, 25, $textColor, 'path/to/font.ttf', $code);
// 輸出圖像
header('Content-type: image/png');
imagepng($image);
// 銷毀圖像資源
imagedestroy($image);
這段代碼使用GD庫創建了一個100x30像素的空白圖片,然后通過chr(rand(65, 90))
生成了一個4位的隨機驗證碼字符串。通過imagecolorallocate
函數設置了驗證碼圖片的背景色和文字顏色,然后使用imagefill
函數填充背景色。最后使用imagettftext
函數在圖片上繪制驗證碼文字。最后通過header
函數設置輸出的圖像類型為PNG,使用imagepng
函數輸出圖像,并使用imagedestroy
函數銷毀圖像資源。
你可以將上述代碼保存為一個PHP文件,然后通過瀏覽器訪問該文件就可以看到生成的驗證碼圖片。