下面我将为您详细讲解CentOS 7下PHP环境搭建GD库等插件安装方法的完整攻略。
安装PHP
首先我们需要安装PHP,可以通过以下命令安装:
sudo yum install php php-common php-devel php-cli php-gd php-mysql php-xml php-mbstring
安装GD库
接下来我们需要安装GD库,GD库是一个用来生成动态图片的库。可以通过以下命令安装:
sudo yum install php-gd gd gd-devel
安装完成后需要重启Web服务,比如Apache或Nginx,以使GD库的支持生效。
安装其他PHP插件
除了GD库,还有许多其他的PHP插件也是必不可少的。例如:
- MySQL:可以通过以下命令安装:
sudo yum install php-mysql
- XML:可以通过以下命令安装:
sudo yum install php-xml
- mbstring:可以通过以下命令安装:
sudo yum install php-mbstring
示例说明
这里提供两个示例,一个是生成随机验证码图片,另一个是处理图片缩略图。
示例一:生成随机验证码图片
首先需要在PHP文件中使用GD库创建一张随机验证码图片。
<?php
session_start();
$width = 100;
$height = 30;
$len = 6;
$captcha = '';
// 获取随机验证码
$char_source = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
for ($i = 0; $i < $len; $i++) {
$captcha .= $char_source[mt_rand(0, strlen($char_source) - 1)];
}
// 将验证码存储到session中
$_SESSION['captcha'] = $captcha;
header('Content-Type: image/png');
$image = imagecreate($width, $height);
$bg_color = imagecolorallocate($image, 255, 255, 255);
$text_color = imagecolorallocate($image, 0, 0, 0);
imagettftext($image, 20, mt_rand(-10, 10), 10, 25, $text_color, './arial.ttf', $captcha);
imagepng($image);
imagedestroy($image);
示例二:处理图片缩略图
可以通过以下代码使用GD库处理一张图片的缩略图并展示在网页上。
<?php
// 原始图片文件名
$filename = 'example.jpg';
// 缩略图文件名
$thumb_filename = 'example_thumb.jpg';
// 缩略图的宽度和高度
$thumb_width = 100;
$thumb_height = 100;
// 获取缩略图的实际宽度和高度以及开始坐标
list($width_orig, $height_orig, $type) = getimagesize($filename);
$ratio_orig = $width_orig / $height_orig;
if ($thumb_width / $thumb_height > $ratio_orig) {
$thumb_width = $thumb_height * $ratio_orig;
} else {
$thumb_height = $thumb_width / $ratio_orig;
}
$x = ($thumb_width - $thumb_height) / 2;
$y = 0;
// 创建原始图片以及缩略图的资源
$image_p = imagecreatetruecolor($thumb_width, $thumb_height);
$image = imagecreatefromjpeg($filename);
// 生成缩略图
imagecopyresampled($image_p, $image, 0, 0, $x, $y, $thumb_width, $thumb_height, $width_orig - 2 * $x, $height_orig);
// 输出缩略图到文件或浏览器
imagejpeg($image_p, $thumb_filename, 90);
imagedestroy($image_p);
以上就是CentOS 7下PHP环境搭建GD库等插件安装方法的完整攻略,希望能对您有所帮助。