在当前的web开发中,PHP的框架已经成为了开发的主流,其中ThinkPHP框架以其简单易用和高效的特性,引领着PHP框架的时代潮流。本文将介绍ThinkPHP的composer安装和图像处理类库加载。
1. Composer安装—安装composer
Composer是PHP的一个依赖管理工具,它允许您在自己的项目中声明所依赖的库,Composer会找出需要的库以及它们依赖的库,然后下载这些库及其依赖的库,最终解决了这些依赖项之间的依赖关系,使其可以顺利的运行。
Composer的安装非常简单,只需在官网中下载 Windows 下载的 .exe 文件,双击安装即可。如果你是 Mac 或者是 Linux,可以在 Terminal 中使用命令行方式安装。
(1)Windows下命令行方式安装Composer
①首先你需要PHP环境,如果你已经安装好了PHP环境,那你可以来到 Composer官网,下载 windows 下载的 .exe 文件;
②双击下载好的文件,展开安装目录:
在这里我选择了D:/php/composer,当然你可以选择自己熟悉的目录,然后按照步骤一步步安装即可。
③安装好Composer之后,允许命令提示符,输入 composer 进行测试,如果出现:
C:\Users\Administrator>composer
______
<<<<<<<>>>> _____
<<<<<>> >>>>> | | | |
<<<<>> >>>>>>> |_____| |____|
<<< >>>>> |
<<< >>>>> ____ |____|
<<< >>>>> | | |
<<<<<<>>>>>>>>>> |____| |
Composer version 1.10.15 2020-10-13 15:59:09
...
说明Composer已经正常安装。
(2)Mac或Linux下命令行方式安装Composer
在Mac或Linux中,安装Composer使用的是Terminal命令行方式。打开Terminal,用curl命令来安装Composer。
①输入命令:
curl -sS https://getcomposer.org/installer | php
会在当前目录下生成composer.phar文件。
②将 composer.phar 文件复制到/usr/local/bin/目录下,并将其重命名为composer:
sudo mv composer.phar /usr/local/bin/composer
现在可以用composer命令进行测试:
composer
如果能正常的输出composer的信息,则说明composer安装成功了。
2. 上手操作—使用Composer安装PHP依赖库
Composer 安装依赖库目前相当普遍。在 ThinkPHP 框架中也需要使用 Composer 安装以及管理相关依赖库的版本。
这里以安装 PHP Excel 库为例:
(1)在你的 PHP 项目目录下,创建一个 composer.json 文件
{
"require": {
"phpoffice/phpexcel": "1.8.*"
}
}
(2)在项目目录下,使用 composer 命令进行安装
composer install
这里提醒:请确认您当前的 Composer 已经正确安装。如果你之前没有安装过 Composer,那么可以参考上一小节的操作。如何进度比较慢,也可以使用:composer install --no-dev命令。
安装好之后,会在项目目录下自动创建vendor
目录,如下所示:
此时,你可以看到 PHPExcel 相关的文件和类已经被安装到了项目目录下的vendor
目录,你只需要负责调用的部分即可。
下面我们来说一下如何使用这个库:
require_once '/vendor/autoload.php';
3. 图片处理—ThinPHP 5.1 跨版本兼容升级
ThinkPHP 框架已经自带了对图片处理的函数库,但是如果我们需要对图片进行水印、调整大小等偏高级的操作的话,我们还是需要使用其他的三方库,如intervention/image
等。
(1)intervention/image安装—安装Laravel图像处理 intervention/image 库
这里我们讲的是 ThinkPHP 框架中如何使用Intervention Image 来进行 图像处理。
安装命令行:
composer require intervention/image
安装完成之后,需要在项目配置文件中添加配置:
识别图片路径配置为:public路径下的uploads和imgs
在config/filesystems.php
文件中添加:
'disks' => [
'public' => [
'driver' => 'local',
'root' => public_path(), // public目录
'url' => env('APP_URL').'/public',
'visibility' => 'public',
],
'uploads' => [
'driver' => 'local',
'root' => public_path('uploads'),
],
'imgs' => [
'driver' => 'local',
'root' => public_path('imgs'),
]
]
在config/app.php
文件中注册 快捷方式:
'Image' => Intervention\Image\Facades\Image::class,
(2)实例操作—简单处理图片(三方库)
使用Intervention Image很简单,下面就来看一个实际的应用,实现一个图片缩放、裁剪的应用程序。
首先我们需要在控制器中添加以下代码:
public function demo1() {
// 打开一个图片文件
$img = Image::make('imgs/1.jpg');
// 调整大小
$img->resize(200,200);
// 保存文件
$img->save('imgs/1_1.png');
// 打开一个文件
$img = Image::make('imgs/1.jpg');
// 裁剪图片
$img->crop(200, 200, 0, 0);
// 保存文件
$img->save('imgs/1_2.png');
return "done";
}
控制器代码就是这样,这里我们使用到了make()
方法打开图片,然后调用resize()
方法对它进行缩放,最后再调用save()
方法完成图片处理。
同样我们也使用到了crop()
方法,对图片进行裁剪,并使用save()
方法保存。
最后输出 done 代表处理成功,成功后可以在项目目录的 imgs
目录下看到处理后的图片。
总结
本文主要介绍了composer的安装与使用,以及ThinkPHP图片处理类库加载实现了一个图片缩放、裁剪的应用程序的实例操作。同时还对使用Intervention Image的简单操作做出了说明。相信读完本文的童鞋都已经熟练掌握了如何使用composer,同时也对ThinkPHP的图像处理有了初步的认识。