Laravel blade.php 页面打印 PHP 代码而不是 运行 它

Laravel blade.php page prints the PHP code instead of running it

当我在浏览器中加载页面时,它会逐字显示所有 PHP 和 HTML 代码而不是 运行 代码,为什么 if 语句不起作用? 它是 public 文件夹中的一个 .blade.php 页面,只有 HTML 代码。我尝试 运行 的代码如下:

@if (session->has('email'))
    <p>Show this paragraph.</p>
@else
    <p>Show this other paragraph.</p>
@endif

HTML 页面格式正确,工作正常。

<!DOCTYPE html><html lang="en"> 
    various html elements
</html>

这是我第一次使用 blade 和 php。感谢任何帮助,谢谢。

Blade 模板(所有模板,真的,但 尤其是 Blade)需要进入 resources/views,而不是 public。 PHP 无法理解 Blade 模板语言 - 只有在通过 Laravel 的视图系统处理时才会解释它,即 return view('name.of.template').