執筆時(2021.10)において、最新版の4.3.5では下記の不具合が解消されているようです。
PHP7.2に対応となってますが、製品情報では7.4まで対応と書かれてて、どちらが正しいのか?? 正常に動作するのなら構わないけど。
下記、旧記事は参考のため残しておきます
不具合症状
Apache2.4+PHP7.3+Jpgraph4.3.1の環境下において、JpGraph Error: 25092
のエラーにより、グラフが出力されなくなった
エラーの内容を見ると、フォントや設定を見直せみたいな事が書かれてる
確認
- php.ini
# vi /etc/php.ini
include_path = ".:/var/www/jpgraph"
- jpg-config.inc.php
define('USE_CACHE',true);
define('CACHE_DIR','/var/cache/jpgraph/‘);
define('READ_CACHE',true);
- 属性確認
# chown apache:apache -R /var/cache/jpgraph/
確認しても、症状変わらず
PHP7.3は未対応?
Jpgraphをダウンロードした際に、Examples内にサンプルがあるので、確認したところ、やはりサンプルファイルでもグラフ出力が出来ない
Jpgraphの公式サイトを見ると、Jpgraph 4.3.x以降でPHP7.4をサポートしているが、NoteにはPHP7.2までしか明記されてないので、PHP7.3は未対応なの?
テスト環境で、PHP7.4を試してみたところ、やはりグラフ出力が出来ないので、今現在PHP7.3以降は未対応なのではないだろうか?
解決方法
下記に解決の糸口を見つける有益な情報がありました
jpgraphのgd_image.inc.phpにパッチを当てることで、PHP7.3,7.4でとりあえず正常に動作するようになった。
(パッチ当てるのが分からなかったり、面倒くさい方は、gd-Image.inc.phpを入れ替えるだけでも良い)
要するにGD関連のエラーのようですね