thinkphp 参数传递方式(基础)

我今天下午主要学习了thinkphp5.0的路由部分,我下面总结一下我主要学习到的知识点:

路由定义:

有两种方式:

(1).动态注册:

eg:  Route::rule(‘hello‘,‘index/index/hello‘,‘GET‘);

(2)配置式:

eg:   return [    ‘__pattern__‘ => [        ‘name‘ => ‘\w+‘,    ],    ‘[hello]‘ => [        ‘:id‘ => [‘index/hello‘, [‘method‘ => ‘get‘], [‘id‘ => ‘\d+‘]],        ‘:name‘ => [‘index/hello‘, [‘method‘ => ‘post‘]],    ],];

请求类型:

类型 描述
GET GET请求
POST POST请求
PUT PUT请求
DELETE DELETE请求
* 任何请求类型
eg:
Route::get(‘new/:id‘,‘News/read‘); // 定义GET请求路由规则
Route::post(‘new/:id‘,‘News/update‘); // 定义POST请求路由规则
Route::put(‘new/:id‘,‘News/update‘); // 定义PUT请求路由规则
Route::delete(‘new/:id‘,‘News/delete‘); // 定义DELETE请求路由规则
Route::any(‘new/:id‘,‘News/read‘); // 所有请求都支持的路由规则

获取参数的方法 [三种 ]: 1).方法内变量的对应

public function hello($id,$name){ echo $id; echo $name;}

2).Request对象Requeset::instance=>param();//获取所有参数[ 结果类型数组],不分请求类型;Requeset::instance=>param(‘name‘);//获取单个参数[即:直接填写变量名即可];Requeset::instance=>get();//获取?后面的参数;Requeset::instance=>route();//获取路由里面的参数; Requeset::instance=>post();//获取post请求参数eg:
public function hello(){   $res=Request::instance()->param();   var_dump($res);}

依赖注入方式
public function hello(Request $request){   $res=$request->param();   var_dump($res);}

3).使用input助手函数input(‘param‘); //获取所有结果数组input(‘param.name‘); //获取nameinput(‘get.name‘); //获取post方式input(‘get.name‘); //获取get方式

 
 
 


 
时间: 2024-10-13 02:10:23

thinkphp 参数传递方式(基础)的相关文章

ThinkPHP的使用基础(一)

在项目开始就要开始创建单入口文件,然后运行它,以便让系统产生一个名为INDEX的编译文件: 2.我们所需要的使用的模板就放在这个编译文件的Tpl文件夹下面:但是我们要在这个编译的Tpl文件下面建立一个针对这个控制器的文件夹,命名规则是首字母大写(如Index):然后在这个命名的文件夹下存放你的模板文件: 注:你的模板文件一定要是.html结束的文件. 如:我的就放在INDEX/Tpl/Index/index.html:(Index文件夹是自己创建的) 3.Index里面的Commom文件夹是用来

Java和C参数传递方式的比较

java中的形参是复制实参的一份拷贝(对于引用类型则是复制引用的拷贝,在栈中的拷贝),所以在函数中改变形参是无法改变实参的值的,改变引用只是将形参所代表的引用指向另外的新的对象,而实参的引用还指向原来的对象,改变形参引用的成员当然会影响实参引用成员的值,因为他们的引用都指向同一个对象.[Java只有值传递Java只有值传递Java只有值传递,重要的事情说3遍] 示例代码: public class ExchangeValue { public static void main(String[]

【整理】--C++三种参数传递方式

在C++中,共有三种参数传递方式: 按值传递(pass by value) 地址传递(pass by pointer) 引用传递(pass by reference) (1)按值传递的过程为:首先计算出实参表达式的值,接着给对应的形参变量分配一个存储空间,该空间的大小等于该形参类型的,然后把以求出的实参表达式的值一一存入到形参变量分配的存储空间中,成为形参变量的初值,供被调用函数执行时使用.这种传递是把实参表达式的值传送给对应的形参变量,故称这种传递方式为“按值传递”. 使用这种方式,调用函数本

Java函数参数传递方式详解

在阅读本文之前,根据自己的经验和理解,大家可以先思考并选择一下Java函数的参数传递方式: A. 是按值传递的? B. 按引用传递的? C. 部分按值部分按引用? 此处暂不宣布正确答案,我们通过一个简单的例子让大家自己找答案: 1. 先定义一个类型Value Java代码   public static class Value { private String value = "value"; public String getValue() { return value; } pub

C语言函数参数传递方式

C语言中函数的参数传递方式有两种:传值.传地址. 1.传值调用 在被调用函数中开辟出一个临时的内存空间,在主调用函数进入被调用函数前,会将实参进行拷贝,拷贝的数据放在该临时内存空间中,供被调用函数使用.当被调用函数返回时,该临时内存空间即被释放. 1 #include<stdio.h> 2 3 int test_func(char *q) 4 { 5 long lAddr=&q; // 被调用时,光标选中“&q”,显示结果(随机)为:0x002df7ac {0x013058b8

java中参数传递方式话题终结实例

java新手入门面临的一个经典的话题,本文意在终结这个话题,java中有说法:Java里面参数传递都是按值传递,怎么理解这句话?用文字说明恐怕不容易说明白,说明白恐怕也难以想明白. 前提 先明确一下,按值还是按引用的概念,它是来自c++语言,引用不是汉语词典中的一个词,而是c++的概念--"&"这个符号还记得吧? 为什么有这个话题呢?其一,是对按引用传递理解不透彻:其二,诸多java书籍及讨论论点并没有切中要害.?? 一句话概括,按值传参还是按引用传参,既然是参数传递方式,那么

ThinkPHP的操作基础(二)

1.$readTime_rank_result=M('blog')->order('bReadTime DESC')->limit(3)->select(): a.返回值为数据集,可以用一下的方法在前台输出: <volist name="readTime" id="r"> {$r.Id} nbsp; {$r.Time} </br>  //或是:{$r['Id']} nbsp; {$r['Time']} </volist

C# 同一应用程序域不同线程之间的参数传递方式

很久没有写博客了,最近的项目不用写代码.今天没事就看看thread之间的参数传递方式,这里主要适用于运行在不同线程的两个方法之间参数传递.直接看代码 1.方法之间直接传递参数 void DemoParam() { Console.WriteLine("DemoParam:" + Thread.CurrentThread.ManagedThreadId); //Thread t = new Thread(new ParameterizedThreadStart(testparam));

产品经理学Python:参数传递方式

这是关于Python的第5篇文章,主要介绍下参数传递方式和如何设计自己的函数. (一) 本篇主要介绍2种参数传递方式. 位置参数 调用函数时,根据函数定义的参数位置来传递参数. 1 def right_triangle_area(a,b): 2 return 1/2*a*b 3 4 print(right_triangle_area(3,4)) 5 # 位置参数传递 求直角三角形面积,a.b分别为两条直角边,这里调用函数时使用的是位置参数传递.在位置参数传递中,参数的顺序是不可改变的. 关键词参