PHP中GD库的使用

由于我要用到php的验证码

php 复制代码
<?php
session_start();

// 生成验证码
$random_code = substr(md5(uniqid(mt_rand(), true)), 0, 6);

// 将验证码保存到 session 中
$_SESSION['captcha'] = $random_code;

// 创建图片
$font = 6;
$image_width = 100;
$image_height = 40;

// 创建图像
$image = imagecreatetruecolor($image_width, $image_height);

// 设置背景色
$background_color = imagecolorallocate($image, 255, 255, 255);
imagefill($image, 0, 0, $background_color);

// 设置验证码颜色
$text_color = imagecolorallocate($image, 0, 0, 0);

// 在图像上绘制验证码
imagestring($image, $font, 15, 10, $random_code, $text_color);

// 输出图像
header("Content-Type: image/png");
imagepng($image);

// 释放内存
imagedestroy($image);
?>

php.ini 配置文件中开启 GD 扩展即可使用

相关推荐
啊阿狸不会拉杆13 分钟前
《数字图像处理》第 4 章 - 频域滤波
开发语言·python·数字信号处理·数字图像处理·频率域滤波
江沉晚呤时29 分钟前
从零实现 C# 插件系统:轻松扩展应用功能
java·开发语言·microsoft·c#
Knight_AL1 小时前
Java 多态详解:概念、实现机制与实践应用
java·开发语言
Omigeq1 小时前
1.2.1 - 图搜索算法(以A*为例) - Python运动规划库教程(Python Motion Planning)
开发语言·python·机器人·图搜索算法
资深流水灯工程师1 小时前
基于Python的Qt开发之Pyside6 串口接收数据被分割的解决方案
开发语言·python·qt
没有bug.的程序员1 小时前
Java 并发容器深度剖析:ConcurrentHashMap 源码解析与性能优化
java·开发语言·性能优化·并发·源码解析·并发容器
量子炒饭大师2 小时前
【C++入门】零域终端的虚空指针协议——【nullptr】还在为编译器给NULL匹配为int而头疼?nullptr给予你全新的字面量!
开发语言·c++·nullptr
edisao2 小时前
一。星舰到底改变了什么?
大数据·开发语言·人工智能·科技·php
阿豪只会阿巴2 小时前
【多喝热水系列】从零开始的ROS2之旅——Day10 话题的订阅与发布1:Python
开发语言·c++·python·ubuntu·ros2
Frank Castle2 小时前
【C语言】详解C语言字节打包:运算符优先级、按位或与字节序那些坑
c语言·开发语言