我已经搜索过这个,过去问题中提供的解决方案对我来说完全不可理解。每当我运行像imagecreatefromjpeg
这样的函数时,我都会得到:
致命错误:调用未定义的函数imagecreatefromjpeg()...
我正在进行新的PHP安装;我的上次安装从未遇到过这个问题。我不知道发生了什么。
答案 0 :(得分:77)
安装GD库
您正在使用哪种操作系统?
http://php.net/manual/en/image.installation.php
视窗 http://www.dmxzone.com/go/5001/how-do-i-install-gd-in-windows/
Linux的 http://www.cyberciti.biz/faq/ubuntu-linux-install-or-add-php-gd-support-to-apache/
答案 1 :(得分:60)
在Ubuntu / Mint(基于Debian)
$ sudo apt-get install php5-gd
答案 2 :(得分:13)
您必须启用库GD2。
找到你的(正确的)php.ini文件
找到以下行:; extension = php_gd2.dll并删除前面的分号。
该行应如下所示:
extension=php_gd2.dll
然后重启apache,你应该好好去。
答案 3 :(得分:9)
安装php5-gd
后,需要重启。
答案 4 :(得分:9)
sudo apt-get install phpx.x-gd
sudo service apache2 restart
x.x是versiónphp。
答案 5 :(得分:8)
对于Ubuntu上的php 7:
sudo apt-get install php7.0-gd
答案 6 :(得分:7)
即使安装了GD,您仍然可以获得Fatal error: Call to undefined function imagecreatefromjpeg()
。
解决方案是安装/启用jped lib:
在 Ubuntu :
上 apt-get install libjpeg-dev
apt-get install libfreetype6-dev
在 CentOS :
yum install libjpeg-devel
yum install freetype-devel
如果从源代码编译,请添加--with-jpeg-dir --with-freetype-dir
或--with-jpeg-dir=/usr --with-freetype-dir=/usr
。
有关详细信息,请查看https://www.tectut.com/2015/10/solved-call-to-undefined-function-imagecreatefromjpeg/
答案 7 :(得分:7)
如果您像我一样,并且使用PHP Docker images之一作为基础,则需要使用与上面讨论的内容不同的说明来添加gd扩展名。
对于php:7.4.1-apache
图片,您需要在Dockerfile
中添加:
RUN apt-get update && \
apt-get install -y zlib1g-dev libpng-dev libjpeg-dev
RUN docker-php-ext-configure gd --with-jpeg && \
docker-php-ext-install gd
这些dev软件包是GD php扩展编译所必需的。对我来说,这导致了在PHP中使用PNG和JPEG支持激活GD。
答案 8 :(得分:5)
在CentOS,RedHat等中使用以下命令。别忘了重启Apache。因为必须加载PHP模块。
yum -y install php-gd
service httpd restart
答案 9 :(得分:1)
之后
systemctl restart php-fpm
Gd库起作用。
答案 10 :(得分:1)
如前所述,您可能需要安装GD库。
在外壳上,首先检查您的php版本:
php -v
然后进行相应安装。在我的系统(Linux-Ubuntu)中,它的php版本是7.0:
sudo apt-get install php7.0-gd
重新启动您的Web服务器:
systemctl restart apache2
您现在应该已经安装并启用了GD库。