Cause
An error occurred while using the following code
{!! Form::open ()!!}
Error message
[Symfony\component\debug\exception\fatalerrorexception] Call to undefined method illuminate\foundation\application::bindshared ()
Reason
Find related issues in stack overflow (call to undefined method illuminate\foundation\application::bindshared ())
As you can tell by your answers and official documents (Upgrade Guide),bindshared has been abandoned.
Bindshared method has been deprecated in favor of the singleton Method.--panthro
Solve
Open config/app.php
Remove The following sentence
Providers ' Illuminate\html\htmlserviceprovider ' aliases in ' Form ' = ' illuminate\html\formfacade ', ' Html ' = ' Illuminate\html\htmlfacade
Remove illuminate/html Package
Composer Remove Illuminate/htmlcomposer update
From the official documentation we can see that the replacement package is laravelcollective/html
So
Installing laravelcollective/html
Composer require laravelcollective/html
Back to config/app.php
Add The following statement
The ' Form ' =>collective\html\formfacade::class in the collective\html\htmlserviceprovider::class,aliases in providers, ' Html ' =>collective\html\htmlfacade::class,
Problem solving
Other than that
1. Use Laravel version 5.4,php version 5.6 when writing this article
2. Attach Laravel documentation for forms & HTML (based on 5.4)--laravelcollective/html
Laravel The pit note--illuminate/html was abandoned