PHP语法基础3.1
PHP函数应用(不是很重要)
- 一、函数定义
- 二、自定义函数
- 1、函数定义
- 2、函数调用
- 3、参数传递
- 4、递归函数
- 5、变量函数
- 三、PHP变量的作用域
- 1、局部变量
- 2、全局变量
- 3、静态变量(static)
一、函数定义
函数是对于一段具有特定功能代码的封装,可以重复使用。
二、自定义函数
1、函数定义
格式:
function functionName(……){
函数体;
return 返回值
}
function func( a , a, a,b)
{
if ( a = = a== a==b)
echo “a=b”;
else if( a > a> a>b)
echo “a>b”;
else
echo “a<b”;
}
func(30,20);
2、函数调用
function my_sort(KaTeX parse error: Expected '}', got 'EOF' at end of input: …ray) { for(i=0; i < c o u n t ( i<count( i<count(array);KaTeX parse error: Expected '}', got 'EOF' at end of input: …{ for (j= i + 1 ; i+1; i+1;j<count( a r r a y ) ; array); array);j++)
{
if( a r r a y [ array[ array[i]> a r r a y [ array[ array[j])
{
t m p = tmp= tmp=array[$j];
a r r a y [ array[ array[j]= a r r a y [ array[ array[i];
a r r a y [ array[ array[i]=$tmp;
}
}
}
return $array;
}
$arr=array(2,4,1,4,7,4);
s o r t a r r = m y s o r t ( sort_arr=my_sort( sortarr=mysort(arr);
foreach($sort_arr as $num)
echo $num;
3、参数传递
//例子1
function fruit( & $fru)
{
$fru =“apple”;
}
p e a r = " p e a r " ; f r u i t ( pear="pear"; fruit( pear="pear";fruit(pear);
echo $pear;
注意:在定义函数时给参数赋予默认值,参数的默认值必须是常量表达式,不能是变量、类成员或函数调用。
默认参数必须放在非默认参数的右侧;否则,函数将不会按照预期的情况执行。
//例子2
function makecoffee($type= “cappuccino”)
{
return “Making a cup of $type.
”;
}
echo makecoffee();
echo makecoffee(null);
echo makecoffee(“espresso”);
4、递归函数
//声明一个函数
function test($n){
echo KaTeX parse error: Expected 'EOF', got '&' at position 4: n."&̲nbsp"; if(n>0)
{
test($n-1);
}
else
{
echo “<--------->”;
}
echo $n.“ ”;
}
test(10);
5、变量函数
//案例1
function come()
{
echo “谁进门了?
”;
}
function go(KaTeX parse error: Expected '}', got 'EOF' at end of input: …") { echo "name 出门了
“;
}
function back(KaTeX parse error: Expected '}', got 'EOF' at end of input: …r) { echo "str 重新进门”;
}
//声明一个变量并赋值
$func=“come”;
//使用变量函数来调用函数come()
$func();
//重新给变量赋值
$func=“go”;
//使用变量函数调用函数go()
$func(“jsne”);
//重新给变量赋值
$func=“back”;
//使用变量函数来调用函数back()
$func(“cc”);
补充:function_exists()函数判断该变量函数是否存在
//案例2
a c t i o n = " s h o w s t r " ; f u n c t i o n s h o w s t r ( ) e c h o " 显示字符串 " ; i f ( f u n c t i o n e x i s t s ( action ="showstr"; function showstr() { echo "显示字符串"; } if (function_exists( action="showstr";functionshowstr()echo"显示字符串";if(functionexists(action()));
$action();
三、PHP变量的作用域
1、局部变量
在函数内部声明的变量,该变量只是局部有效。
$my_var=“test”;
function my_function()
{
l o c a l v a r = 123 ; e c h o ′ local_var=123; echo ' localvar=123;echo′local_var=‘. l o c a l v a r . " < b r > " ; / / 报错 e c h o ′ local_var."<br>"; // 报错 echo ' localvar."<br>";//报错echo′my_var =’. KaTeX parse error: Expected 'EOF', got '}' at position 17: …y_var ."<br>"; }̲ my_function();…local_var=‘. l o c a l v a r . " < b r > " ; e c h o ′ local_var."<br>"; echo ' localvar."<br>";echo′my_var =’. $my_var .“
”;
2、全局变量
在函数外部定义的变量,拥有全局作用域global.
$x=1;
function test()
{
global $x;
$y=2;
echo x + x+ x+y;
}
test();
3、静态变量(static)
//案例1
function test()
{
$x=0;
echo $x;
$x++;
}
test();
test();
test();
//案列2
function test()
{
static $x=0;
echo $x;
$x++;
}
test();
test();
test();
PHP语法基础3.1相关推荐
- Java基础笔记(入门,语法基础,流程控制,数组)
Java语言入门 发展历程 三大技术体系 JavaSE 标准版 JavaEE 企业版 JavaME 嵌入式版 Java语言特点 简单性 健壮性 面向对象 分布式 多线程 动态性 可移植性(跨平台) J ...
- 给Java初学者福利——Java语法基础
Java代码基本格式 Java中所有程序代码都必须存在于一个类中,用class关键字定义类,在class之前可以有一些修饰符.格式如下: 修饰符 class 类名 { 程序代码 } 注: 1.Java ...
- python语法基础知识总结-python语法基础知识
一.数字类型及操作 1.整数类型 可正可负,无取值范围限制pow(x,y):计算x^y 2.浮点数类型 存在不确定尾数round(x,d):对x四舍五入,d为小数截取位数e/E:a*10^b 3.复数 ...
- VRML语法基础跟简介
VRML语法基础和简介 VRML简介和基础语法 -------------------------------------------- 一.VRML是什么 VRML是虚拟现实造型语言 (Virtua ...
- Web开发(一)·期末不挂之第四章·CSS语法基础(CSS选择器选择器优先级各类样式表的使用方法)
CSS语法基础 一.单纯html控制样式的缺点 二. CSS✪✪✪ CSS概述 CSS基础语法 组成 选择器 标签选择器 类选择器 id选择器 通配选择器 后代选择器 插入样式表的三种方式 行内样式 ...
- [Python从零到壹] 三.语法基础之文件操作、CSV文件读写及面向对象
欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...
- java的基础语法是什么_java语法基础
java语法基础 引导语:作为一门计算机语言,Java也是有语法的,以下是百分网小编分享给大家的java语法基础,欢迎阅读! java语法基础: 1,关键字:其实就是某种语言赋予了特殊含义的单词. 保 ...
- HDLBits答案(1)_Verilog语法基础
HDLBits_Verilog语法基础 线信号 与物理电线不同,Verilog中的线信号(和其他信号)是"方向性的".这意味着信息只向一个方向流动,从驱动程序流向接收器.在Veri ...
- java的封装性_Java10-java语法基础(九)——java的封装性
Java10-java语法基础(九)--java的封装性 一.Java的三大特性:封装.多态.继承 封装:通过类封装对象的数据成员和成员方法,保证只有可信的类或者对象能够访问这些方法和数据成员,对不可 ...
- python创建和控制的实体称为_Python语法基础
Python语法基础 数据对象和组织 对现实世界实体和概念的抽象 简单类型(表示):整数-int.浮点数-float.复数-complex.逻辑值-bool.字符串-str 容器类型(组织):列表-l ...
最新文章
- Python安装模块出错(No module named setuptools)解决方法
- python复工_Python批量创建复工证明实现过程中的Bug汇总及其相应的解决方案
- kiss原则包括什么_和女孩牵手与kiss的具体方法
- esp32 rtc 时钟设置不对_「STM32」实时时钟(RTC)实验
- 镜头MTF传递函数解读
- RDLC报表---自定义数据集
- centos yum “The requested URL returned error: 404”错误
- 使用NumberFormatter判断TextInput输入内容是否为数字,如果是则格式化数字。
- dp----最少硬币问题
- php方法重载方法重写_Java基础之方法的重载
- PyTorch学习—21.GPU的使用
- 开源一个简单的VC界面库
- 基于RRT算法的路径规划
- 知识分享:进销存管理系统记录有效库存让销售更有保障
- 通知 | 关于组织开展湖北省2022年度高新技术企业认定工作的通知
- 启动rabbitmq
- swift学习之数组、字典和字符串
- 【清单】边角知识清单
- 漫步云中网络 ( by quqi99 )
- html5 打气球小游戏,javascript开发打气球小游戏