Хорошо, он запустит любой допустимый скрипт в блоке try, но если он потерпит неудачу, он отобразит весь контент в блоке catch. Таким образом, вы, вероятно, хотите что-то вроде:
$this->render("head");
try {
$this->render("body-$id1");
} catch (Exception $e) {
$this->render("body-$id2");
}
$this->render("foot");
Я не вижу метода API, чтобы проверить, существует ли представление, но вы могли бы написать помощник контроллера, который просто получает путь к вашим сценариям представления и использует file_exists
, чтобы проверить, является ли "body - {$ id1}" существует на этом пути.