phpThumbはとても便利なライブラリなので、通常のウェブサイトの他、WordPressやMovable Typeと組み合わせて使っている人もいるだろう。
いままで問題無く表示されていたphpThumbを使ったサムネイルの画像が表示されなくなる原因のひとつがサーバーのPHPがバージョンアップ。
phpThumbはバージョンによってPHP5.3の環境ではエラーを返すようになる。
簡単な見分け方は簡単。
表示されない画像にALTが設定してあれば、画像の代わりにALTの文字が表示されているはず。右クリックで画像のみを表示させると、画像の代わりに下記のようなエラーコードが表示される。
Deprecated: Function eregi() is deprecated in /phpThumb_x.x.x/phpthumb.functions.php on line …
PHP 5.3では非推奨のeregi()が使われていることに対する警告
対応方法だが、選択肢は2種類。
1. 警告 メッセージのみ消す
スクリプト先頭の
error_reporting(E_ALL);
ini_set(‘display_errors’, ‘1’);
を変更。
簡単だが、これはおススメしない。
2の方法を施すまでの臨時対応にとどめたい。
2. phpThumb-for-PHP-5.3にする
以下のURLからphpThumb-for-PHP-5.3をダウンロードして置き換える
https://github.com/simpson/phpThumb-for-PHP-5.3
ページ右側にある「Download Zip」ボタンから一式をダウンロード