在laravel刀片php的PHP代码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在laravel刀片php的PHP代码相关的知识,希望对你有一定的参考价值。

我试图在我的laravel登录表单中添加<?php echo $_GET["tname"] ?>以将其用作https://example.com/?tname=test以获得自动填充值,但是当我尝试添加它时它说

哎呀,看起来像出事了。

任何人都可以告诉我如何在其中使用该代码。 这是我的laravel登录页面代码:

<form class="" role="form" method="POST" action="{{ url('/login') }}">
    <div class="panel panel-body">
        <h4 class="text-semibold mt-0">{{ trans('messages.login') }}</h4>

        <div class="form-group has-feedback has-feedback-left{{ $errors->has('email') ? ' has-error' : '' }}">
            <input id="email" type="email" class="form-control" name="email" placeholder="{{ trans("messages.email") }}"
                 value="<?php echo $_GET["tname"]; ?>"
            >
答案

代替:

<?php echo $_GET["tname"]; ?>

只需使用:

{{ request()->input('tname') }}

即使您可以使用@php ... @endphp指令,也不应在Blade中使用PHP代码

另一答案

如果你想明确地使用PHP代码块,你可以在刀片标签@php /一些常规的PHP代码/ @endphp中使用它,在你的情况下它可以是:

<form class="" role="form" method="POST" action="{{ url('/login') }}">
    <div class="panel panel-body">
        <h4 class="text-semibold mt-0">{{ trans('messages.login') }}</h4>

        @php
            $a = 5;
            $b = ['a', 'b', 'c'];
            $c = isset($_GET['tname']) ? $_GET['tname'] : null;
        @endphp
        <div class="form-group has-feedback has-feedback-left{{ $errors->has('email') ? ' has-error' : '' }}">
            <input id="email" type="email" class="form-control" name="email" placeholder="{{ trans("messages.email") }}"
             value="{{ $c }}">

当然,使用没有PHP输入卫生的GET变量也不会太聪明,这就是@MarcinNabiałek和@AlexeyMazenin答案正确的原因。我在这里只是指出如何在刀片中使用PHP块代码来解决问题标题。

另一答案

您可以使用request()帮助程序获取URI参数:

value="{{ request('tname') }}"

以上是关于在laravel刀片php的PHP代码的主要内容,如果未能解决你的问题,请参考以下文章

在 Laravel 中使用刀片模板在 php 标签内打印 JavaScript 变量值

Laravel 4刀片模板导致FatalErrorException?

从包含在laravel中的刀片获得刀片变量

php Laravel碳转换日期在刀片

我可以将刀片变量传递给 Laravel 中的 php 变量吗?

Laravel 5.2:如何在刀片模板中设置变量,没有 php 标签?