APP下载

PHP函数传递及返回值初探

2020-12-08陈春晖

数码设计 2020年15期
关键词:赵四赋值张三

陈春晖

摘要:

本文通过总结几个小例子,初步分析了PHP语言中的函数参数的传递,函数返回值的确定,等,给出了一些简单的结论。

关键词:

函数;传递;返回值

中图分类号:

TP312.1

文献标识码:

A

文章编号:

1672-9129(2020)15-0198-01

函数传递参数通常有三种方式,第一种方式,按值传递,这里定义了一个函数,test,函数有两个参数,parm1、parm2。接下来调用这个函数同样有两个参数$foo和$boo,在调用函数的时候,PhP会默认将$foo的值赋值$parm1,$boo值賦值给$parm2,这个过程就像神奇的印度飞饼,不管你传递多少个参数,函数会按照参数的先后顺序一一接收。

例如调用者的第一个参数$foo的值赋给函数的第一个参数,$boo的值赋给第二个参数parm2,如果有第3个第4个也是一一这样的对应的关系。

按值传递的方式就是将函数调用者中的参数,以从左到右的顺序依次复制给函数的参数,然后执行函数体内的代码,这就是按值传递的方式,也是最常见的方式。

接下来看一下第二种传递的方式:按引用传递。之前我们在学习变量的时候,学习过按引用赋值,按引用传递的参数与按引用赋值是一样的。我们再来回顾一下,在这个例子中定义了一个$name变量,将其赋值为函数测试,然后将$name这个变量按引用的方式赋值给$membername使用了地址符号。

在内存中的情况是只有一个函数测试这个值,$name和$membername,他们同时指向函数测试,这个值的地址。当函数测试值发生变化的时候,$name的值和$membername的值同时发生变化,这就是按引用传递。在函数中按引用传递,就是将参数的内存地址传递到函数中,即在参数前面加一个地址符号。我们来举例说明一下,按值传递和按引用传递的区别。

在乡村爱情故事中,赵四获得了村委会的任职,村委会给他安排了一间自己的办公室,于是他弄了一份图纸,设计了一个这样的办公室。此时刘能看到了赵四的办公室,真好看,于是他想方设法弄到了肇事的处置。按照这张图纸,他建造了一间一模一样的办公室,这种根据图纸能够创建一模一样的办公室的方式,就相当于按值传递方式。不久以后,由于村委会经济拮据,所以决定将刘能和赵四安排在同一个办公室,即他们两个共用这一个办公室。这时候赵四和刘能他们两个之间又开始相互影响了,这种方式就是按引用传递的方式,即使在函数的内部,所有的操作都会影响到调用者参数的值。

在填写网站的一些个人信息的时候,我们通常会在性别来有男女和保密三个选项,如果你不选择男或女,通常我们将其默认为保密,下面就实现这个功能。假如说我输入张三,然后我们来运行一下,在浏览器中输入网址,0212,看到提示信息中给我们报了错误,这里有个警告,说音符的函数缺少第二个参数。

我们来看一下,这里有两个参数$name和$gender,而我们在调用的时候只赋了一个初值张三,所以他给我们报了一个提示信息,缺少第二个参数,要加一个男。

Functioninfo($name,$gender)

{

Echo“$name”;

}

Info(“张三”);

再来输入一下。张三。这是正常了。现在要实现一个功能,不输入男或女,而显示保密,这应该怎么做呢?当然你也可以使用ifelse语句来判断,不是男不是女,然后选择保密。这里我们使用更简单的方式,对于这个参数,我们为其赋一个初值,这样在我们不使用第二个参数的时候,就会为其赋值为保密。

再来看一下,张三,第一个参数张三,第二个参数难输出的时候,张三男第一个参数里是第二个参数没有,默认的情况下就是保密这种为参数赋一个初始值的方式,就是函数的默认参数形式。

函数的返回值,我们已经知道可以通过参数向函数传递信息,不过函数还可以向它的调用者发回信息,首先程序运行到调用者的时候,根据调用者名称找到函数,这时控制权转移到函数,函数执行函数体内的代码,执行完毕以后,通过return语句将返回值返回给调用者,这样控制权再次回到了调用者。

结语:这里是对函数参数传递及返回值的一些简单探讨,如有错漏,欢迎指正。

参考文献:

[1]PHP程序设计(慕课版).程文彬,李树强2016

[2]PHP网站开发实例教程(第2版)黑马程序员2020

[3]PHP动态网站程序设计(第2版).唐四薪.2020

[4]web动态网站开发技术.郭玲.2019

[5]PHP动态网站开发项目教程.牟奇春.汪剑.2016

猜你喜欢

赵四赋值张三
试拳
那片林子有鸟叫声(短篇小说)
算法框图问题中的易错点
抽象函数难度降 巧用赋值来帮忙
利用赋值法解决抽象函数相关问题オ
开心一刻
赵四请客
学生为什么“懂而不会”
失踪
失踪