检测服务器上是否安装了FreeType PHP扩展

Blu*_*ica 13 php freetype php-extension

如何测试以查看运行PHP的服务器上是否安装了FreeType扩展?

我想在我的网站上制作一个简单的CAPTCHA系统,所以我使用imagettftext()它并且工作正常.但是如果服务器没有安装FreeType库呢?

那么有没有办法以某种方式通过代码检测FreeType库,如果它不存在,回到类似的东西imagestring()

如果我不能使用,imagettftext()我可能不得不考虑绘制大字体文本的替代方案,因为imagestring最大尺寸对于像CAPTCHA这样的东西不好.

Jon*_*Jon 17

在实践中并不比function_exists已发布的解决方案更好,但技术上正确的检查方法是使用extension_loaded.


Nor*_*orm 12

用途function_exists:

if (function_exists('imagettftext')) {
     imagettftext();
} else {
     // do other function
}
Run Code Online (Sandbox Code Playgroud)

希望有所帮助.

  • +1这不是检查是否安装了freetype,而是检查函数imagettftext是否可用 - 但这应该在给定的上下文中工作 (2认同)

Ben*_*ner 5

假设已安装GD库,则可以使用gd_info()函数检测Freetype支持。

$gdinfo = gd_info();
if($gdinfo['FreeType Support']) echo 'FreeType Support Enabled';
Run Code Online (Sandbox Code Playgroud)

如果需要检查是否首先安装了GD库,请使用 extension_loaded('gd');