请选择 进入手机版 | 继续访问电脑版
验证码不显示使用imagettftext()函数执行失效的原因排查解决方法
登陆使用到验证码死活加载不出来,排查之后发现imagettftext函数执行失败。该函数作用是把文字写入图片当中,常用于做验证码图片。使用该函数需要安装GD库,但是安装之后依然不能使用,报以下错误:

PHP Fatal error: Call to undefined function imagettftext()
原因是由于安装GD库的时候没有安装freetype的支持。freetype不是一个独立的拓展,是依附在GD库上面的一个拓展而已。所以编译的时候要把freetype的支持也安装上。

由于我使用的环境是docker搭建的,故只贴出docker的安装代码

  1. FROM php:fpm
  2. RUN apt-get update && apt-get install -y \
  3.     libfreetype6-dev \
  4.         libmcrypt-dev \
  5.         libpng12-dev \
  6.         libjpeg-dev \
  7.         libpng-dev
  8.     && docker-php-ext-install iconv mcrypt \
  9.     && docker-php-ext-configure gd \
  10.         --enable-gd-native-ttf \
  11.         --with-freetype-dir=/usr/include/freetype2 \
  12.         --with-png-dir=/usr/include \
  13.         --with-jpeg-dir=/usr/include \
  14.     && docker-php-ext-install gd \
  15.     && docker-php-ext-install mbstring \
  16.     && docker-php-ext-enable gd
复制代码
重启下PHP。OK,完美解决。
如图所示:

验证码不显示使用imagettftext()函数执行失效的原因排查解决方法

验证码不显示使用imagettftext()函数执行失效的原因排查解决方法

推荐给好友: [复制链接]
推荐文章
回复

使用道具 举报

发布主题
  • 今日更新:29 昨日更新:14
  • 会员总数:375 模板总数:8960
打造全国最大建站模板下载平台
在线技术QQ

515138

周一至周日9:00-23:00

如有侵权请联系我们

515138@qq.com 在线QQ咨询

微信扫码关注我们