Functionality for Laravel framework template loading and assigning variables and simple routing

不言
Release: 2023-04-01 14:04:02
Original
1787 people have browsed it

This article mainly introduces the Laravel framework template loading, variable allocation and simple routing functions. It analyzes the related principles, operating skills and precautions of the Laravel framework template loading, variable allocation and simple routing functions in the form of examples. Friends who need it can Refer to the examples below

This article describes the Laravel framework template loading, variable allocation and simple routing functions. Share it with everyone for your reference, the details are as follows:

As the world's number one PHP framework, it is imperative to learn Laraver. Although ThinkPHP is popular in China, it is always good for you to know one more framework.

Through the previous article's method of quickly installing the Laravel framework on a local virtual machine, we have been able to successfully install Laravel

After installation, there is a routes.php in the directory laravel\app\Http File, the point is, this is the routing file that controls the entire site.

Route::get('/', function () {
 return view('welcome');
});
Copy after login

The above is a simple route, if you bind the route and enable it For the pseudo-static of apche and nginx, you can access it through the domain name http:xxx.com/

Then a beautiful Laraver interface will appear.

So what does return refer to? It is to return a View files, Laraver's view files are under laravel\resources\views. Laraver stipulates that the view file name ends with .blade.php. Usually we need a lot of views when doing projects, so we can under views It is possible to define many directories and then place them in

return view('index.index');
Copy after login

. It represents the view file in the directory below the view. Many frameworks are like this, but the file name is The naming will be different.

The above is just a simple route that calls an anonymous function, so how to use it in conjunction with control.

Laraver’s controller directory is in laravel\app\Http \Controllers Below, you can create a controller through the

php artisen make:controller UseController

command that comes with Laraver, and the commonly used method, if we output the content under the index method of the control

If you need a controller without any definition, please add the --plain parameter after it

But how to access it? Please look at the code

Route::get('/','UseController@index');
Copy after login

This example binds the current directory '/' to the index method under the controller UseController

Route::get('/about','UseController@about');
Copy after login

Another example is this, we can use http:xxx.com/about to access the specified control method

There are many get here, such as needing to use post, etc. , I will contact you one after another in the future.

Then there is another problem, is it very troublesome to define a route every time, so Laraver allows us to use implicit controllers

Route::controller('User','UserController');
Copy after login

This is to access any method under User without specifying a route, but in this case remember to follow the following format in the method

Specify delivery methods such as get or post Index, the first method name should be capitalized. If passing parameters, it should be in function ($a), and write .

in the function. Classify the variable to the blade template. Note here that it is different from the thinkphp framework. We commonly use it. The following methods:

1:

If

$name = 'php artisen';
Copy after login

you can

return view('index')=>with('name',$name);
Copy after login

Then use {{ $name }} in the template to parse the assigned variables.

The above method is equivalent In

return view('index',['a'=>'b']);
Copy after login

However, when parsing in the template, you still need to use {{ $a }} to allocate variables

2:

If

$articles = DB::table('user')->get();
Copy after login

the result of using database query

is also I saw someone recommending this way of writing

return view('user.dashboard.index', compact('articles'));
Copy after login

But this is all personal operating habits.

When using the compact function In this case, we can directly traverse

$data = ['a','b','c'];
Copy after login

in the case of using

@foreach($data as $v)
Copy after login

Next, you can directly use {{ $v }} to traverse

3:

Of course we usually allocate arrays or objects Come over. So generally use the following method

You can

return view('index',$data);
Copy after login

It should be noted that the default is PDO in database.php under config 'fetch' => PDO::FETCH_ASSOC, the default is FETCH_CLASS as the object format

So when traversing, if the default settings are not modified, the traversal will be {{ $a-> ;v }}This kind, if it is an array, it is {{ $a['v'] }}

About escaping and not escaping during loading Meaning, for example:

$a = &#39;<span style="color:red">this Laravel</span>&#39;;
Copy after login

##{{ $a }} Output

<span style="color:red">this Laravel</span>
Copy after login

{{!! $aa !!}} Output the

&#39;this Laravel&#39;
Copy after login

knowledge points in red font, if loaded The variable is a one-dimensional array, which is output as {{ $key name}} in the template. For example:

$data[&#39;a&#39;] = &#39;this&#39;;
$data[&#39;n&#39;] = &#39;that&#39;;
return view(&#39;sites.my&#39;,$data);
Copy after login

is

## in the template.

#
<p>我是$data分配过来的变量{{ $a }}</p>
Copy after login

This works, you can’t use it

$data[&#39;a&#39;]
Copy after login

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

关于Laravel中重写资源路由自定义URL的实现方法

Laravel5框架中向视图传送array的学习

The above is the detailed content of Functionality for Laravel framework template loading and assigning variables and simple routing. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template