仕事で古いWebサービスの改修をしている。
目的はPHP5 → PHP7 へのバージョンアップ。
テンプレートエンジンにSmartyを使用している。
環境
- php7.3
- Smarty2.0
事象
Smartyは、一旦テンプレートを読み込んでコンパイルし、コンパイルしたコンテンツを templates_c/ フォルダ配下にためて、2度め以降にアクセスされた際にはそのコンパイル後のコンテンツを表示することで高速化を図っている。
しかし、改修中にテストしたく、
templates_c/ 配下を削除し、
Webブラウザでアクセスすると、画面が真っ白になってしまい、コンテンツが表示されなくなってしまった。
原因
php7にあげてしまったことが原因らしい。
でも、php5のときでもtemplates_c/ 配下を削除するとhttpステータス500エラーになっていたんだが…これは別の原因か…
対応
=== 2.6.32 – 2021-10-22 ===
=== 2.6.31 – 2017-11-03 ===
– replace functions deprecated in PHP 7.2
v2.6.31
にてphp7.2に対応されていた。
2022年4月28日現在では最新Versionが
v2.6.32
だったため、これをダウンロードし、現在のSmarty2.0と差し替えた。
参考にしたサイト
10年前から稼働中のシステムを PHP5→PHP7 に変更した - phpプログラミング メモ
たすかりましたよー
コメント