当前位置: 首页 > news >正文

函数的参数传递和返回值-PHP8知识详解

本文学习的是《php8知识详解》中的《函数的参数传递和返回值》。主要包括:向函数传递参数值、向函数传递参数引用、函数的返回值。

Image

1、向函数传递参数值

函数是一段封闭的程序,有时候,程序员需要向函数传递一些数据进行操作。可以接受传入参数的函数定义形式如下:

function 函数名称(参数1,参数2){算法描述,其中使用参数1和参数2;
}

向函数传递参数值,示例代码:

<?php
function myFunction($param1, $param2) {// 在函数中使用传递的参数echo "参数1的值为:" . $param1 . "<br>";echo "参数2的值为:" . $param2 . "<br>";
}// 调用函数并传递参数值
myFunction("Hello", "World");?>

在PHP8中的运行结果为:

参数1的值为:Hello
参数2的值为:World

在上述示例中,我们定义了一个名为myFunction的函数,它接受两个参数$param1和$param2。在函数体内,我们使用echo语句打印出传递的参数值。最后,我们通过调用myFunction函数并传递参数值"Hello"和"World"来执行函数。

2、向函数传递参数引用

向函数传递参数引用就是将参数的内存地址传递到函数中。此时,函数内部的所有操作都会影响调用参数值。

使用引用传递方式传值时只需要在原来的基础上加上“&”即可。

向函数传递参数引用,示范代码:

<?php
$a = 10;
$b = 20;
function  sum(&$a,$b){$a =  $a * $b;echo "求积运算的结果为:$a";
}
sum($a,$b);
echo "<br>";
sum($a,$b);
echo "<br>";
sum($a,$b);
?>

这段代码展示了一个名为sum的函数在PHP中的使用。首先,变量a被赋值10,变量b被赋值20。

然后定义了一个名为sum的函数,并传入两个参数-引用参数a和普通参数b。在函数内部,

a与b相乘的结果赋值给了$a本身,即它是一个引用参数。然后,打印出"a"的结果。

在主程序中,通过调用sum函数,将a和b传递进去并进行求积运算,并输出结果。由于$a是引用参数,在每次调用sum函数时,它会保持更新。

因此,上述代码会执行三次sum函数调用,每次打印出不同的求积结果。

以上代码在PHP8中的运行结果为:

求积运算的结果为:200
求积运算的结果为:4000
求积运算的结果为:80000

3、函数的返回值

在上面的例子中,都是把函数运算完成的值直接打印出来。

但是,很多情况下,程序不需要直接打印结果,而是仅仅给出结果,并且把结果传递给调用这个函数的程序,为其所用。

这里需要用到return关键字设置函数的返回值。

函数的返回值,示例代码:

<?php
function  sum($a,$b){    //创建函数return $a*$b;    //设置函数的返回值
}
echo "求积运算的结果为:".sum(10,20);
?>

以上代码在PHP8的运行结果为:

求积运算的结果为:200

到此为止,向函数传递参数值、向函数传递参数引用、函数的返回值。就讲解完毕了。

space

 

http://www.lryc.cn/news/142407.html

相关文章:

  • 【Redis】 Redis短连接的性能优化
  • 无涯教程-分类算法 - 逻辑回归
  • URL中传递JSON字符串
  • Python Opencv实践 - Sobel边缘检测
  • IDEA快速设置Services窗口
  • 【CSS】CSS 背景设置 ( 背景半透明设置 )
  • 基于android的学生公寓后勤系统/学生公寓管理系统APP
  • 跳跃游戏 II
  • GPT教我学Vue-Router
  • Tokenview再度升级:全新Web3开发者APIs数据服务体验!
  • 什么是原型链(Prototype Chain)?它在JavaScript中有什么作用?请解释一下JavaScript中的“this”关键字的含义和用法。
  • JS-this知识点、面试题
  • 【C++入门到精通】C++入门 —— 多态(抽象类和虚函数的魅力)
  • 基于springboot学生社团管理系统/基于Java的高校社团管理系统的设计与实现
  • 【C++】C++ 引用详解 ⑦ ( 指针的引用 )
  • ubuntu安装goland
  • 海康摄像头通过SDK接入到LiveNVR实现双向语音喊话对讲与网页无插件播放,并支持GB28181级联语音对讲...
  • 解锁开发中的创意:用户为中心的设计思维的力量
  • python+mysql+前后端分离国内职位数据分析(源码+文档+指导)
  • uniapp封装ajax请求
  • 电路原理分析2:应急照明灯电路
  • 构造函数内的方法 直接写在构造函数内部 与 写在prototype上 的区别
  • 系统架构主题之七:基于架构的软件设计方法及应用
  • Python-if __name__ == ‘__main__‘和collections.Mapping的用法
  • Linux 基金会宣布正式进驻中国
  • Pyecharts教程(二):使用pyecharts绘制3D散点图——以营养元素为例
  • 软考高级系统架构设计师系列论文第100篇:论软件的可维护性设计
  • curl 使用发送POST GET请求 HEADER设置
  • 使用 Transformer 和 Amazon OpenSearch Service 构建基于列的语义搜索引擎
  • 算法通关村第九关——透彻理解二分查找