首页 > 解决方案 > isset 中的非法偏移类型或空(Laravel 7)

问题描述

我的 laravel 项目有一些问题。当我启动我的应用程序并在浏览器中刷新应用程序时,它会显示以下错误消息:

isset 中的非法偏移类型或空(查看:/Users/inf/open-source/application/resources/views/auth/register.blade.php)

中间件:Localization.php

<?php

namespace App\Http\Middleware;

use App;
use Closure;

class Localization
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        if (session()->has('locale')) {
            App::setLocale(session()->get('locale'));
        }

        return $next($request);
    }
}

控制器:本地化控制器

<?php

namespace App\Http\Controllers\Web;

use App;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request; 
use RealRashid\SweetAlert\Facades\Alert;

class LocalizationController extends Controller
{
    public function SiteLocalization($locale)
    {
        App::setLocale($locale);
        // store the locale in session so that the middleware can register it
        session()->put('locale', $locale);

        toast('The language has been changed successfully.','success');

        return redirect()->back();
    }
}

资源/auth/register.blade.php

<form id="registerForm" method="POST" action="{{ route('register') }}">
    @csrf
    <fieldset>
        <div class="form-row">
                <div class="form-group form-group-auth col-md-6 @error('firstname') is-invalid @enderror">
                    <label for="firstname">{{ __('First Name') }} <span class="text-danger">*</span></label>
                    <div class="input-group">
                        <div class="input-group-prepend">
                            <span class="input-group-text"><ion-icon name="people-outline"></ion-icon></span>
                        </div><!-- End input-group-prepend -->
                        <input type="text" id="firstname" class="form-control form-control-auth" name="firstname" value="{{ old('firstname') }}" placeholder="First Name *" autofocus />
                    </div><!-- End input-group -->
                    @error('firstname')
                    <div class="invalid-feedback invalid-feedback-msg d-block">
                        <p class="mb-0"><span class="mr-1"><i class="fas fa-exclamation-triangle"></i></span> {{ $message }}</p>
                    </div>
                    @enderror
                </div><!-- End form-group -->
                <div class="form-group form-group-auth col-md-6 @error('lastname') is-invalid @enderror">
                    <label for="lastname">{{ __('Last Name') }} <span class="text-danger">*</span></label>
                    <div class="input-group">
                        <div class="input-group-prepend">
                            <span class="input-group-text"><ion-icon name="people-outline"></ion-icon></span>
                        </div><!-- End input-group-prepend -->
                        <input type="text" id="lastname" class="form-control form-control-auth" name="lastname" value="{{ old('lastname') }}" placeholder="Last Name *" />
                   </div><!-- End input-group -->
                   @error('lastname')
                   <div class="invalid-feedback invalid-feedback-msg d-block">
                       <p class="mb-0"><span class="mr-1"><i class="fas fa-exclamation-triangle"></i></span> {{ $message }}</p>
                   </div>
                   @enderror
                </div><!-- End form-group -->
        </div><!-- End form-row -->
        <div class="form-group form-group-auth @error('name') is-invalid @enderror">
            <label for="name">{{ __('Username') }} <span class="text-danger">*</span></label>
            <div class="input-group">
                <div class="input-group-prepend">
                    <span class="input-group-text"><ion-icon name="person-outline"></ion-icon></span>
                </div><!-- End input-group-prepend -->
                <input type="text" id="name" class="form-control form-control-auth" name="name" value="{{ old('name') }}" placeholder="Username *" />
            </div><!-- End input-group -->
            @error('name')
                <div class="invalid-feedback invalid-feedback-msg d-block">
                    <p class="mb-0"><span class="mr-1"><i class="fas fa-exclamation-triangle"></i></span> {{ $message }}</p>
                </div>
            @enderror
        </div><!-- End form-group -->
        <div class="form-group form-group-auth @error('email') is-invalid @enderror">
            <label for="email">{{ __('E-mail Address') }} <span class="text-danger">*</span></label>
            <div class="input-group">
                <div class="input-group-prepend">
                    <span class="input-group-text"><ion-icon name="mail-outline"></ion-icon></span>
                </div><!-- End input-group-prepend -->
                    <input type="email" id="email" class="form-control form-control-auth" name="email" value="{{ old('email') }}" placeholder="E-mail Address *" />
                </div><!-- End input-group -->
                @error('email')
                <div class="invalid-feedback invalid-feedback-msg d-block">
                    <p class="mb-0"><span class="mr-1"><i class="fas fa-exclamation-triangle"></i></span> {{ $message }}</p>
                </div>
                @enderror
        </div><!-- End form-group -->
        <div class="form-row">
            <div class="form-group form-group-auth col-md-6 @error('password') is-invalid @enderror">
                <label for="password">{{ __('Password') }} <span class="text-danger">*</span></label>
                <div class="input-group">
                    <div class="input-group-prepend">
                        <span class="input-group-text">
                            <i class="ion" v-bind:class="[passwordIcon]" v-on:click="hidePassword = !hidePassword"></i>
                        </span>
                    </div><!-- End input-group-prepend -->
                    <input :type="passwordType"
                    v-model="registration.password" 
                    id="password" 
                    class="form-control form-control-auth" 
                    name="password" 
                    placeholder="Password *" 
                    data-container="body" 
                    data-toggle="popover" 
                    data-trigger="hover" 
                    data-placement="top" 
                    data-content="Make sure it's at least 10 characters including a one lowercase letter, one uppercase letter, one digit, and special character." />
                </div><!-- End input-group -->
                @error('password')
                <div class="invalid-feedback invalid-feedback-msg d-block">
                    <p class="mb-0"><span class="mr-1"><i class="fas fa-exclamation-triangle"></i></span> {{ $message }}</p>
                </div>
                @enderror
            </div><!-- End form-group -->
            <div class="form-group form-group-auth col-md-6 @error('password_confirmation') is-invalid @enderror">
                <label for="password-confirm">{{ __('Confirm Password') }} <span class="text-danger">*</span></label>
                <div class="input-group">
                    <div class="input-group-prepend">
                        <span class="input-group-text">
                            <i class="ion" v-bind:class="[RepeatpasswordIcon]" v-on:click="hideRepeatPassword = !hideRepeatPassword"></i>
                        </span>
                    </div><!-- End input-group-prepend -->
                    <input :type="RepeatpasswordType"
                    v-model="registration.password_confirmation"
                    id="password-confirm" 
                    class="form-control form-control-auth" 
                    name="password_confirmation" 
                    placeholder="Confirm Password *" />
                </div><!-- End input-group -->
                @error('password_confirmation')
                <div class="invalid-feedback invalid-feedback-msg d-block">
                    <p class="mb-0"><span class="mr-1"><i class="fas fa-exclamation-triangle"></i></span> {{ $message }}</p>
                </div>
                @enderror
            </div><!-- End form-group -->
        </div><!-- End form-row -->
    </fieldset>
</form>

标签: phplaravel

解决方案


向刀片发送 $message 值

或者

例如在变量之前使用@

{{ @$message }}

或者

{{ @$message?:"default message" }}
<form id="registerForm" method="POST" action="{{ route('register') }}">
                @csrf
                <fieldset>
                    <div class="form-row">
                            <div class="form-group form-group-auth col-md-6 @error('firstname') is-invalid @enderror">
                                <label for="firstname">{{ __('First Name') }} <span class="text-danger">*</span></label>
                                <div class="input-group">
                                    <div class="input-group-prepend">
                                        <span class="input-group-text"><ion-icon name="people-outline"></ion-icon></span>
                                    </div><!-- End input-group-prepend -->
                                    <input type="text" id="firstname" class="form-control form-control-auth" name="firstname" value="{{ old('firstname') }}" placeholder="First Name *" autofocus />
                                </div><!-- End input-group -->
                                @error('firstname')
                                <div class="invalid-feedback invalid-feedback-msg d-block">
                                    <p class="mb-0"><span class="mr-1"><i class="fas fa-exclamation-triangle"></i></span> {{ @$message }}</p>
                                </div>
                                @enderror
                            </div><!-- End form-group -->
                            <div class="form-group form-group-auth col-md-6 @error('lastname') is-invalid @enderror">
                                <label for="lastname">{{ __('Last Name') }} <span class="text-danger">*</span></label>
                                <div class="input-group">
                                    <div class="input-group-prepend">
                                        <span class="input-group-text"><ion-icon name="people-outline"></ion-icon></span>
                                    </div><!-- End input-group-prepend -->
                                    <input type="text" id="lastname" class="form-control form-control-auth" name="lastname" value="{{ old('lastname') }}" placeholder="Last Name *" />
                               </div><!-- End input-group -->
                               @error('lastname')
                               <div class="invalid-feedback invalid-feedback-msg d-block">
                                   <p class="mb-0"><span class="mr-1"><i class="fas fa-exclamation-triangle"></i></span> {{ @$message }}</p>
                               </div>
                               @enderror
                            </div><!-- End form-group -->
                    </div><!-- End form-row -->
                    <div class="form-group form-group-auth @error('name') is-invalid @enderror">
                        <label for="name">{{ __('Username') }} <span class="text-danger">*</span></label>
                        <div class="input-group">
                            <div class="input-group-prepend">
                                <span class="input-group-text"><ion-icon name="person-outline"></ion-icon></span>
                            </div><!-- End input-group-prepend -->
                            <input type="text" id="name" class="form-control form-control-auth" name="name" value="{{ old('name') }}" placeholder="Username *" />
                        </div><!-- End input-group -->
                        @error('name')
                            <div class="invalid-feedback invalid-feedback-msg d-block">
                                <p class="mb-0"><span class="mr-1"><i class="fas fa-exclamation-triangle"></i></span> {{ @$message }}</p>
                            </div>
                        @enderror
                    </div><!-- End form-group -->
                    <div class="form-group form-group-auth @error('email') is-invalid @enderror">
                        <label for="email">{{ __('E-mail Address') }} <span class="text-danger">*</span></label>
                        <div class="input-group">
                            <div class="input-group-prepend">
                                <span class="input-group-text"><ion-icon name="mail-outline"></ion-icon></span>
                            </div><!-- End input-group-prepend -->
                                <input type="email" id="email" class="form-control form-control-auth" name="email" value="{{ old('email') }}" placeholder="E-mail Address *" />
                            </div><!-- End input-group -->
                            @error('email')
                            <div class="invalid-feedback invalid-feedback-msg d-block">
                                <p class="mb-0"><span class="mr-1"><i class="fas fa-exclamation-triangle"></i></span> {{ @$message }}</p>
                            </div>
                            @enderror
                    </div><!-- End form-group -->
                    <div class="form-row">
                        <div class="form-group form-group-auth col-md-6 @error('password') is-invalid @enderror">
                            <label for="password">{{ __('Password') }} <span class="text-danger">*</span></label>
                            <div class="input-group">
                                <div class="input-group-prepend">
                                    <span class="input-group-text">
                                        <i class="ion" v-bind:class="[passwordIcon]" v-on:click="hidePassword = !hidePassword"></i>
                                    </span>
                                </div><!-- End input-group-prepend -->
                                <input :type="passwordType"
                                v-model="registration.password" 
                                id="password" 
                                class="form-control form-control-auth" 
                                name="password" 
                                placeholder="Password *" 
                                data-container="body" 
                                data-toggle="popover" 
                                data-trigger="hover" 
                                data-placement="top" 
                                data-content="Make sure it's at least 10 characters including a one lowercase letter, one uppercase letter, one digit, and special character." />
                            </div><!-- End input-group -->
                            @error('password')
                            <div class="invalid-feedback invalid-feedback-msg d-block">
                                <p class="mb-0"><span class="mr-1"><i class="fas fa-exclamation-triangle"></i></span> {{ @$message }}</p>
                            </div>
                            @enderror
                        </div><!-- End form-group -->
                        <div class="form-group form-group-auth col-md-6 @error('password_confirmation') is-invalid @enderror">
                            <label for="password-confirm">{{ __('Confirm Password') }} <span class="text-danger">*</span></label>
                            <div class="input-group">
                                <div class="input-group-prepend">
                                    <span class="input-group-text">
                                        <i class="ion" v-bind:class="[RepeatpasswordIcon]" v-on:click="hideRepeatPassword = !hideRepeatPassword"></i>
                                    </span>
                                </div><!-- End input-group-prepend -->
                                <input :type="RepeatpasswordType"
                                v-model="registration.password_confirmation"
                                id="password-confirm" 
                                class="form-control form-control-auth" 
                                name="password_confirmation" 
                                placeholder="Confirm Password *" />
                            </div><!-- End input-group -->
                            @error('password_confirmation')
                            <div class="invalid-feedback invalid-feedback-msg d-block">
                                <p class="mb-0"><span class="mr-1"><i class="fas fa-exclamation-triangle"></i></span> {{ @$message }}</p>
                            </div>
                            @enderror
                        </div><!-- End form-group -->
                    </div><!-- End form-row -->
                </fieldset>
            </form>


推荐阅读