在使用GD库的时候,有个函数不能识别
Call to undefined function imagettftext()
百度后发现缺少freetype这个扩展。
下面这句话是抄来的😝
freetype扩展在PHP编译的时候没加,由于这个扩展是核心内置扩展,没法通过phpize来编译安装。解决办法只有一个,就是找到PHP的安装源码重新编译一下,在编译的时候,加上–with-freetype-dir。
可是最蛋疼的是,Mac上PHP是内置的,根本就找不到它的安装源码在哪!所以,唯一的办法,就是下载新的PHP的源码包,完全完全新的编译安装一遍PHP。
推荐一个网站:http://php-osx.liip.ch/,这个网站一个命令就可以安装好对应的版本PHP。
我安装的是7.2版本,命令如下
curl -s http://php-osx.liip.ch/install.sh | bash -s 7.2
输入密码后就开始安装(安装时间看网速)。
最后出现这样说明安装成功了:
PHP安装到了/usr/local/php5目录下,是一个单独的目录,所以,不会影响到原先的PHP,这2个版本是共存的。完全不会影响到目前的PHP版本。
使用php -v查看当前版本还是原来的版本,新版本用/usr/local/php5/bin/php -v查看:
为了方便,我们将新的PHP路径追加到$path中
vi ~/.profile
// .profil有的话直接编辑,没有就新建一个这个文件名的文件。
export PATH=/usr/local/php5/bin:${PATH}
// 编辑好后退出vi模式
//清除下缓存,使得它生效
source ~/.profile
然后用php -v查看,已经是新版本了。
但是用phpinfo()查看,php版本还是之前的版本。怎么办?
修改Apache的配置
执行命令 sudo vim /etc/apache2/httpd.conf,将之前的注释
#LoadModule php7_module libexec/apache2/libphp7.so
最后重启apache服务器就好了。
sudo apachectl restart
参考资料:
https://blog.csdn.net/think2me/article/details/50353160
https://www.jianshu.com/p/71cc6f83e1dc