twig v2からv3への変更点(基礎編)

Twig

久しぶりにtwigを更新しました

以前使ってたtwigのバージョンはv2.12.1

今回更新した最新バージョンはv3.0.3

更新はいつものようにcomposer updateで行いました

ところが、サイトを表示してみるとエラーの嵐

どうやらv2からv3で、色々と変更があった模様です

変更点

導入

// びふぉあー(v2)
require_once __DIR__ . 'autoload.phpへのパス';
 
$loader = new \Twig_Loader_Filesystem('/てんぷれーとへのパス');
$twig   = new \Twig_Environment($loader);
// あふたー(v3)
require_once __DIR__ . 'autoload.phpへのパス';
 
$loader = new \Twig\Loader\FilesystemLoader('/てんぷれーとへのパス');
$twig   = new \Twig\Environment($loader);

v2のころはTwig_Loader_Filesystemでテンプレートを指定してローダーインスタンスを生成してました

ところがv3ではTwig\Loader\FilesystemLoaderに変更されています

のっけからやり方が変わっています

呼び出し

// びふぉあー(v2)
$template = $twig->loadTemplate('呼びだすtwigファイルへのパス');
$data     = [];
echo $template->render($data);
// あふたー(v3)
$template = $twig->load('呼びだすtwigファイルへのパス');
$data     = [];
echo $template->render($data);

twigのloadTemplateがloadに変更します

基本的にはここだけ変更すれば、今まで通り表示されるはずです