Santosh Achari Santosh Achari - 6 months ago 67
PHP Question

Laravel 5 syntax error, unexpected 'extends' (T_EXTENDS)

This is the code in my controller:

class ArticlesController extends Controller {
public function index()
{
$articles = Article::all();
return view('articles.index',compact('articles'));
}

}


My App.blade.php

<!DOCTYPE html>
<html lang="en">
<head>
<title>Title</title>
<meta charset="UTF-8">
<meta name=description content="">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- Bootstrap CSS -->
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="stylesheet" media="screen">
</head>
<body>
<div class="container">
@yield('content')
</div>

@yield('footer')
<!-- jQuery -->
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<!-- Bootstrap JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script>
</body>
</html>


And index.blade.php

<?php

@extends('app')

@section('content')
<h1>Articles</h1>
@stop


This is the error that I get:

FatalErrorException in 5f3efcdeb3d9812b22b5491d0cba9f22 line 3:
syntax error, unexpected 'extends' (T_EXTENDS)


Please help.




Solution listed below. While the issue is silly, and easy to fix - it's hard to find a straight answer via Google Search. Hence keeping this question.

Answer

The <?php ?> Tags are not required in .blade.php files. Remove them and it works.

(The blade syntax need not be in php tags. You can however, include PHP code in tags.)

Comments