Home >Backend Development >PHP Tutorial >PHP framework laravel learning 3 (basic functions)

PHP framework laravel learning 3 (basic functions)

WBOY
WBOYOriginal
2016-08-10 08:48:35962browse

1. Routing

Routing is actually the instruction used by the browser to send http requests. Many API functions actually send requests through URLs.

http request method and response are basic courses, but there is a lot of content, so you must study them first.

Laravel's routing is different from other frameworks and needs to be customized one by one manually. The advantage is that it is powerful, flexible and easy to manage.

3 basic methods

The first one
It is Route::get('path', function(){...}); in this form, you can replace get with post, put, delete and other request methods as needed; this way of writing is the most common and recommended ;

You can use a closure (anonymous function) behind the route to directly execute a piece of code. This is not available in many frameworks. In practice, it is impossible to write the business code into this small closure, but into the control in the controller, so the most common way to write it is Route::get('path', xxxController@action);

The most common use of routing closure functions is to test a certain function or code. It can be written and used immediately, which is very convenient. , I usually keep a Route::get('test', function(){...}); for testing.

There are often a lot of routes in projects, and some people find it slow to write them one by one. Some CRUD are very standardized, so there are so-called Restful routing (controllers).

The second type:
Route::resource('posts','PostsController');

Writing a route like this actually generates 7 routes with route names. The path forms of these 7 routes are formulated in accordance with restful standards, so there are It is called rest routing; but this routing has a limitation, that is, in the corresponding controller, in addition to the 7 methods corresponding to rest, if other methods want to access it, a route must be defined in front of the Restful routing to access it.

Third type:
It’s called control routing, also called implicit routing:
Route::controller(‘foo’, ‘FooController’);

This writing method is very flexible. It uses magic method to set the http request method on the method name, which is very convenient for some API-style requests.

You need to pay attention when naming implicit routes, because it does not write routes one by one. The method is as follows:

<code>Route::controller(<span>'users'</span>, <span>'UserController'</span>, [

    <span>'anyLogin'</span> => <span>'user.login'</span>,

]);</code>

The front is the method name, followed by the route name;

Route name
Having said that, what is the use of naming routes? Useful, because the route (url) will be used in a large number of view files. With the route name, it can be decoupled and the url can be modified arbitrarily without affecting the url in the view;

routing parameters
The routing parameters we usually talk about generally look like index.php?user=ooo&psw=xxx; But in Laravel's view, this clear text method is ugly and unsafe. So it is written like this:

<code>Route::get(<span>'user/{name}'</span>, <span><span>function</span><span>(<span>$name</span>)</span>
{</span><span>//可以直接使用$name</span>
})</code>

If this parameter value is a string, it cannot be the same as other route names. The system will give priority to routing, so the value cannot be obtained.
Regarding the value acquisition, first of all, you can actually pass the value directly, and you can also obtain the value through the object method. The official website explains that it is a bit confusing, route ?>input( id )This

Copyright Statement: This article is the original article of the blogger and may not be reproduced without the permission of the blogger.

The above introduces the PHP framework laravel learning 3 (basic functions), including the content. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement:
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