laravel强大功能路由初探(二)
目标当然是先输出helloworld
配置hosts文件和apache下的httpd-vhosts.conf,
hosts:127.0.0.1 www.blog.com
httpd-vhosts.conf:
<VirtualHost *:80>
DocumentRoot "D:\www\htdocs\blog\laravel\public"
ServerName www.blog.com
</VirtualHost>
以下代码 均在routes.php里面操作

//基础路由1
Route::get('/',function(){
return 'helloworld';
});
输出如下:

//基础路由2
//不能直接输入post方法访问路由
Route::post('test1',function(){
return 'post';
});

//基础路由 3
Route::get('test',function(){
return 'testx';
});

//多请求
Route::match(['get','post'],'xx/xx',function(){
return 'heihei1';
});
//或者
Route::any('xx/xx',function(){
return 'heihei2';
});

//路由传参
Route::get('user/{id}',function($id){
return '用户的id是'.$id;
}); //两个参数
Route::get('user/{name}/{id}',function($name,$id){
return '用户的名字是'.$name.'用户的id是'.$id;
});

//路由可选参数
Route::get('user/{name?}',function($name=null){
return '用户的名字是'.$name;
});

//参数限制where(),用正则判断
Route::get('user/{name}',function($name){
return '用户的名字是'.$name;
})->where('name','[a-zA-Z]+'); //多个参数限制
Route::get('user/{name}/{id}',function($name,$id){
return '用户的名字是'.$name.'用户的id是'.$id;
})->where(['name'=>'[a-zA-Z]+','id'=>'\d+']);
//控制器路由,前一个参数随便填写,你开心就好
//例如admin/test或者test或者nikaixinjiuhao或者xx/xx/xxx/xxx/xx/xx,仍然可以访问
Route::get('xxx/xx','TestController@hello');
Route::get('xx/xx/xxx/xxx/xx/xx','TestController@hello');

//routes.php中
//控制器路由,前一个参数随便填写,你开心就好
//例如admin/test或者test或者nikaixinjiuhao或者xx/xx/xxx/xxx/xx/xx,仍然可以访问
Route::get('xxx/xx','Home\TestController@hello');
//直接写在模块外面
Route::get('xx/xx/xxx/xxx/xx/xx','Test2Controller@hello');

<?php
//控制器可以直接手动创建,或者使用cmd命令行创建
//TestController.php
namespace App\Http\Controllers\Home;
use App\Http\Controllers\Controller;
class TestController extends Controller{
public function hello(){
echo 'hello world';
}
}
<?php
//Test2Controller.php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
class Test2Controller extends Controller{
public function hello(){
echo 'hello world';
}
}


赋值到模板:

TestController.php
<?php
//TestController.php
namespace App\Http\Controllers\Home;
use App\Http\Controllers\Controller;
class TestController extends Controller{
public function hello(){
return 'hello world';
} public function phptemplate(){
$data=['name'=>'zhangsan','userid'=>'39'];
return view('test',$data);
} public function phpblade(){
$data=['name'=>'zhaowu','userid'=>'23'];
return view('test2',$data);
}
}
routes.php
Route::get('usertemplate','Home\TestController@phptemplate');
Route::get('userblade','Home\TestController@phpblade');
test页面
<!DOCTYPE html>
<html>
<head>
<title>这是php形式的模板</title>
</head>
<body>
{{$name}}
{{$userid}}
<hr>
<span style="color:red;font-size:29px"><?php echo $name;?></span>
<span style="color:red;font-size:39px"><?php echo $userid;?></span>
</body>
</html>
test2.blade.php
<!DOCTYPE html>
<html>
<head>
<title>这是phpblade的模板</title>
</head>
<body> <span style="color:red;font-size:29px"><?php echo $name;?></span>
<span style="color:red;font-size:39px"><?php echo $userid;?></span>
<hr>
<span style="color:red;font-size:29px">{{$name}}</span>
<span style="color:red;font-size:39px">{{$userid}}</span>
</body> </html>
得到效果,两者的区别一目了然:


laravel强大功能路由初探(二)的更多相关文章
- [转]Laravel 4之路由
Laravel 4之路由 http://dingjiannan.com/2013/laravel-routing/ Laravel 4路由是一种支持RESTful的路由体系, 基于symfony2的R ...
- laravel基础课程---2、Laravel配置文件、路由及php artisan(php artisan是什么)
laravel基础课程---2.Laravel配置文件.路由及php artisan(php artisan是什么) 一.总结 一句话总结: PHP工具匠:php artisan,其实本身就是一些PH ...
- FM收音机 RDS的强大功能
FM收音机 RDS的强大功能 分类: MTK2011-04-26 16:06 14889人阅读 评论(6) 收藏 举报 交通公告体育音乐娱乐教育 前言 随着发展,会有越来越多的电台具有RDS广播功能, ...
- Python和SQL Server 2017的强大功能
Python和SQL Server 2017的强大功能 摘要: 源:https://www.red-gate.com/simple-talk/sql/sql-development/power-pyt ...
- Python和SQL 2017的强大功能
Python和SQL Server 2017的强大功能 原文来自:https://www.red-gate.com/simple-talk/sql/sql-development/power-py ...
- 将VIM配置成强大的IDE(二)
将VIM配置成强大的IDE(二) 前面我们已经安装好了vundle这一款强大的插件管理工具. 下面,当然是配置我们需要的插件了. 在VIM下面通过命令 help vundle 我们可以知道,VUNDL ...
- Laravel 深入理解路由和URL生成
原文地址: Laravel 深入理解路由和URL生成 在模板中我们一般不会直接写死url,而是用url助手生成url,本文介绍一下url助手的使用以及遇到的一些比较头疼的问题. 首先,我们创建了一个路 ...
- vue2.0学习笔记之路由(二)路由嵌套+动画
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- vue2.0学习笔记之路由(二)路由嵌套
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
随机推荐
- linux的学习记录随笔
为什么学习linux 因为操作系统是一种介质,你要接触其中的东西,首先必须要有介质,而linux在服务器端是老大哥的地位,所以呢,学习linux吧. 学习的方式 可以看视频 imooc.百度传课.网易 ...
- 原: 安装VMtools过程流水帐
以下基于 vm12.0.0 1. 一定要打开虚拟机的 cd设置 2. 然后 cd '/medal/VMware tools ' (注意一定要加 '', 因为VMware tools 有空格) ...
- django之一些feature
前端之django一些feature 本节内容 cookie session 跨站请求保护 分页 序列化 model模块 CBV和FBV 模板渲染对象 1. cookie cookie 是一种发送到客 ...
- javascript中的自执行函数
学习es6的时候遇到了自执行函数,感觉有必要写下来,一方面加深自己的记忆,另一方面还能分享给大家. 什么是自执行函数? 自执行函数就是为了不污染全局变量命名空间的一中匿名函数,相当于自己创建了一个作用 ...
- mysql max_allowed_packet 设置过小导致记录写入失败
mysql根据配置文件会限制server接受的数据包大小. 有时候大的插入和更新会受max_allowed_packet 参数限制,导致写入或者更新失败. 查看目前配置 show VARIABLES ...
- CQRS框架:AxonFramework 之 Hello World
Command Query Responsibility Segregation,CQRS 这个架构好象最近博客园里讨论得比较多,有几篇园友的文章很有深度,推荐阅读: CQRS架构简介 浅谈命令查询职 ...
- kubernetes 文档
kubernetes 官方文档:http://kubernetes.io/docs/ null
- ajax提交数据到java后台,并且返回json格式数据前台接收处理值
1.前台html页面.有一段代码如下: 账 户: <input type="text" name="userName" id="userN& ...
- 学记:为spring boot写一个自动配置
spring boot遵循"约定优于配置"的原则,使用annotation对一些常规的配置项做默认配置,减少或不使用xml配置,让你的项目快速运行起来.spring boot的神奇 ...
- 实例解析防抖动(Debouncing)和节流阀(Throttling)
http://outofmemory.cn/javascript/js-Debounce-throttle