我的PHP之旅--PHP的函数初步认识
2024-08-24 12:06:01
函数
函数主要是将一块代码封装起来方便多次使用,方便以后维护,节省代码。
先看一个简单的函数:
<?php function myFirstFunc(){ echo "Hello PHP"; } myFirstFunc(); ?>
带形参和返回值的函数:
<?php $a = 10; $b = 20; function getMax($num1, $num2) { return $num1 > $num2 ? $num1 : $num2; } echo "最大数是:".getMax($a, $b); echo "<br />最大数是:".getMax(17, 1); ?>
值传递和引用传递
- 值传递:值传递是将变量的值拷贝一份传入参数后,在函数中进行操作,这样不会修改函数外部的变量,它会开辟新的内存来存储变量。
- 引用传递:引用传递是将变量的地址拷贝一份,这样在函数中修改变量也会影响到函数外部的变量,它不会开辟新的内存来储存变量。
<?php $a = 5; $b = 40; $arr = array(55, 10); // 这是值传递参数的函数。 function getMin($num1, $num2){ echo "最小值是:".($num1 < $num2 ? $num1 : $num2)."<br />"; } // 这是引用传递的函数。 function appendArr(&$array, $someValue){ $array[] = $someValue; echo "数组已经被添加<br />"; } getMin($a, $b); appendArr($arr, 80); echo "被添加后的数组:<pre>"; print_r($arr); echo "</pre>"; // 结果: // 最小值是:5 // 数组已经被添加 // 被添加后的数组: // Array // ( // [0] => 55 // [1] => 10 // [2] => 80 // ) ?>
变量的作用域
- 局部变量:是在函数内部声明的,当函数执行后被释放。
- 全局变量:在函数外部所声明的变量,当关闭页面后被释放。
在PHP中 全局变量是无法直接在函数中使用的,需要使用global关键字:
<?php $user_name = "Alex_sk"; function someFun(){ global $user_name; // 在声明时不可赋值 echo "my name is:{$user_name}"; } someFun(); // 结果:my name is:Alex_sk ?>
其实说到底 global关键字 是引用传递的:
<?php $user_name = "Alex_sk"; function someFun(){ global $user_name; // 在声明时不可赋值 $user_name = "Sky"; echo "my name is:{$user_name}"; } someFun(); // user_name在函数中被更改,也会影响到原本的全局变量user_name echo "<br />my name is:{$user_name}"; // 结果: // my name is:Sky // my name is:Sky ?>
最新文章
- 取消Git代理设置
- java中的负数的问题
- 导入DXF文件
- (转载)SQL中导入图片
- webpack React+ES6
- php 读取二进制文件
- Linux常用操作命令(三)
- IntelliJ IDEA 2017 注册方法
- hbuilder 个推 问题记录
- Flume架构以及应用介绍
- @SuppressLint("HandlerLeak"),或Handler使用有警告;
- Socket网络编程--聊天程序(9)
- [HEOI2016/TJOI2016]树
- float double 如何存储
- uva 331 Mapping the Swaps 求交换排序的map 纯DFS
- Python- requests详解
- nGrinder对监控机器收集自定义数据及源码分析
- PHP上传文件限制的大小
- shell视频
- 《Programming with Objective-C》第七章 Values and Collections