我正在尝试将一些图形放在网页上,而在我的原型计算机上,它在localhost上工作正常。但现在我将文件上传到服务器,我在绘制一些图形时遇到问题。在我的计算机中,它们被绘制,但在服务器上它们不是。
我收到了这个错误
Fatal error: Call to undefined function ImageCreate() in /home/t1g01/phplot.php on line 248
第248行
$this->img = ImageCreate($this->image_width, $this->image_height);
我正在使用phplot,我也从phplot上传了这些文件。任何人都可以帮助我吗?
对于任何英语错误表示歉心,并提前感谢您。
答案 0 :(得分:46)
这意味着您安装的php没有安装/启用gd库。
答案 1 :(得分:30)
如果您使用的是Linux计算机,请从控制台执行此命令:
sudo apt-get install php5-gd
安装php_gd2.dll扩展。然后它将在Apache重启后工作。
PS:首先应该检查你当前的php版本
php -v
在我的案例中:
PHP 7.3.5-1 + ubuntu18.04.1 + deb.sury.org + 1(cli)(建于:2019年5月3日) 10:00:24)(NTS)版权所有(c)1997-2018 PHP Group Zend Engine v3.3.5,版权所有(c)1998-2018 Zend Technologies与Zend OPcache v7.3.5-1 + ubuntu18.04.1 + deb.sury.org + 1,版权所有(c)1999-2018,by Zend Technologies
所以,我的PHP版本是7.3,因此,我的版本的命令是:
sudo apt-get install php7.3-gd
答案 2 :(得分:7)
您的服务器最喜欢没有启用GD(内置的PHP图像处理库)。您可以通过在以下输出中查找“GD”来检查:
<?php
phpinfo();
?>
如果没有,请查看PHP文档,了解如何启用它:http://www.php.net/manual/en/book.image.php
答案 3 :(得分:3)
对于Fedora,CentOS
dnf install php-gd
systemctl restart httpd.service
在Ubuntu上
apt-cache search php*-gd
apt-get install php<version>-gd
systemctl restart apache2.service
Windows 用户会看到:http://php.net/manual/en/image.installation.php
答案 4 :(得分:2)
您的GD库似乎未被使用。仔细检查您的php.ini
文件。
答案 5 :(得分:1)
将文件php_gd2.dll从PHP的ext /目录复制到where 你有你的PHP扩展。 (如果php_gd2.dll在扩展名中,则无需复制 dir已经。在php.ini中查找'extension_dir'指令 找到你当前的扩展目录)
修改您的php.ini并更改以下行:
;extension=php_gd2.dll
为:
extension=php_gd2.dll
答案 6 :(得分:1)
对于Ubuntu 16.04:
sudo apt-get install php7.0-gd
停止然后重新启动Apache Server。
PS:首先应该检查你当前的php版本
php -v
在我的案例中:
PHP 7.3.5-1 + ubuntu18.04.1 + deb.sury.org + 1(cli)(建于:2019年5月3日) 10:00:24)(NTS)版权所有(c)1997-2018 PHP Group Zend Engine v3.3.5,版权所有(c)1998-2018 Zend Technologies 与Zend OPcache v7.3.5-1 + ubuntu18.04.1 + deb.sury.org + 1,版权所有(c)1999-2018,作者:Zend Technologies
所以,我的PHP版本是7.3,因此,我的版本的命令是:
sudo apt-get install php7.3-gd
答案 7 :(得分:1)
对于任何php版本,用于ubuntu安装的命令都是
apt-get install php-gd
它将安装与您的php版本匹配的版本,稍后将使用您的php版本进行更新。
答案 8 :(得分:0)
我知道这是一个旧线程,但我最近遇到了同样的致命错误:调用未定义的函数:imagecreate() 问题,同时在 Windows 上使用全新的 Xampp 安装进行一些 QR 编码。
我首先在 php.ini 文件中查找 GD 扩展名并通过取消注释解决了该问题 ;扩展=gd
随后 QR 码按预期生成到浏览器。
注意:不要忘记重新启动 Apache 以使更改生效。