2
/**
 * @Route("/installation", name="installation")
 */
public function defaultAction()
{
    $this->checkPhpVersion();
    return $this->redirect($this->generateUrl('setdatabase'));
}

private function checkPhpVersion()
{
    if(phpversion() <= '5.5.0') 
    {
        $message = 'aaa';   
        return $this->render('myFooBundle:Bar:error.html.twig', ['message' => $message]);       
    }
}

checkPhpVersion()エラー ページを表示し、以降の実行を停止するメソッドの if 命令が必要です。

命令が呼び出されていますが、 setdatabase コントローラー ( の最後defaultAction()) にリダイレクトされるため、ビューが正しくレンダリングされていないようです。

error.html.twig の内容が表示されていません。代わりに、前述のように setdatabase コントローラーが呼び出され、そのメソッドのビューが表示されます。

どうしたの?


private function checkPhpVersion()
{
    if(phpversion() <= '5.5.0') 
    {
        echo 1;
        exit();
        echo 2;
        $message = 'aaa';  
        return $this->render('myFooBundle:Bar:error.html.twig', ['message' => $message]);     
    }
}

これはまだ何も変わりません。ただし、リダイレクトステートメントを削除しreturn array()てそこに raw を配置し、 を削除するexit()と、「1」と「2」の整数が表示され、return array()前述のエラーが表示されます。

4

2 に答える 2