Fatal error: Call to undefined function: imagecreate()

淺唱寂寞╮ 提交于 2019-12-18 12:03:58

问题


I'm trying to put some graphics on a web page and at my prototype at the computer it's all working fine at the localhost. But now I uploaded the files to a server and I'm having a problem to plot some graphics. In my computer they are plotted, but on the server they are not.

I'm getting this error Fatal error: Call to undefined function ImageCreate() in /home/t1g01/phplot.php on line 248

Line 248

$this->img = ImageCreate($this->image_width, $this->image_height);

I'm using phplot, and I uploaded the files form phplot too. Can anyone help me ?

Sorry for any mistake in English and thank you in advance.


回答1:


This means your installation of php doesn't have the gd library installed/enabled.

http://www.php.net/manual/en/image.installation.php




回答2:


If you are using a Linux machine then execute this command from console:

sudo apt-get install php5-gd

to install the php_gd2.dll extension. It will then work after an Apache restart.

PS: should first check your current php version

php -v

In My Case:

PHP 7.3.5-1+ubuntu18.04.1+deb.sury.org+1 (cli) (built: May 3 2019 10:00:24) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.3.5, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.3.5-1+ubuntu18.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies

So, my PHP version is 7.3, so, the command for my version is :

sudo apt-get install php7.3-gd



回答3:


Your server most like does not have GD (the built in PHP image processing library) enabled. You can check this by looking for "GD" in the output of :

<?php
phpinfo();
?>

If not, check the PHP docs on how to enable it: http://www.php.net/manual/en/book.image.php




回答4:


For Fedora, CentOS

dnf install php-gd
systemctl restart httpd.service

On Ubuntu

apt-cache search php*-gd
apt-get install php<version>-gd
systemctl restart apache2.service

Windows users see: http://php.net/manual/en/image.installation.php




回答5:


It seems that your GD library is not being used. Double check your php.ini file.




回答6:


  1. Copy the file php_gd2.dll from your PHP's ext/ directory to where you have your php extensions. (No need to copy if php_gd2.dll is in the extension dir already. Look in php.ini for 'extension_dir' directive to find what is your current extension directory)

  2. Modify your php.ini and change the following line:

;extension=php_gd2.dll

to:

extension=php_gd2.dll



回答7:


For Ubuntu 16.04:

sudo apt-get install php7.0-gd

Stop and then restart Apache Server.

PS: should first check your current php version

php -v

In My Case:

PHP 7.3.5-1+ubuntu18.04.1+deb.sury.org+1 (cli) (built: May 3 2019 10:00:24) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.3.5, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.3.5-1+ubuntu18.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies

So, my PHP version is 7.3, so, the command for my version is :

sudo apt-get install php7.3-gd


来源:https://stackoverflow.com/questions/3106991/fatal-error-call-to-undefined-function-imagecreate

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!