PHP函数

1.函数的理解

 函数:封装一段用于完成特定功能的代码
 函数分类:①内置函数(字符串操作函数、数组操作函数)②自定义函数

2.函数的定义由以下4部分组成:

- 关键字function
- 函数名functionName
- 参数
- 函数体

3.初始函数一各部分说明

- function:在声明函数时必须使用的关键字
- 函数名:要符合PHP的标识符,且函数名是唯一的,不区分大小写
- [参数1, 参数2…]:外界传递给函数的值,它是可选的,多个参数之间使用逗号“,”分隔。
- 函数体:函数定义的主体,专门用于实现特定功能的代码段。
- 返回值:需要使用return关键字将需要返回的数据传递给调用者。

4.内置函数的使用

	$str = 'ABcd';
	$upper = strtoupper($str);		// 调用strtoupper()函数将$str转换成大写
	$lower = strtolower($str);		// 调用strtolower()函数将$str转换成小写
	echo $upper;			        // 输出结果:ABCD
	echo $lower;			        // 输出结果:abcd

5.自定义函数

    <?php                                                                    // 生成4行8列的表格,并输出
	  function generate_table($row, $col)                                     echo generate_table(4, 8);
	  {                                                                      // 生成5行10列的表格,并输出
	    $html = '<table>';                                                    echo generate_table(5, 10);         
		for ($i = 1; $i <= $row; ++$i) {
				   $html .= '<tr>';  
				   for ($j = 1; $j <= $col; ++$j) {	
				   
			           $html .= '<td></td>';
				   }
				   $html .= '</tr>';
	   }
	     return $html.'</table>';
  }

6.嵌套调用

举例:班主任老师要计算每个学生语文和数学平均分,其实现思路是首先编写一个函数用于计算学生的语文和数学的总分,
然后再编写一个 函数用于实现学生的平均分。

						<?php
						      function total($IPhone,$Number){
						        $IPhone=$IPhone*$Number;
						        return $IPhone;
						      }
						       $phone=total(5000,2);
						       $computer= total(8000,10);
						      $num=$phone+$computer;
						      echo $num;
						      
						?>

7.可变函数

 可变函数:可变变量,它的实现是在一个变量前添加一个“$”符号,就变成了另外一个变量。
 同理,可变函数的实现就是在一个变量名后添加一对圆括号“()”,让其变成一个函数的形式,
 然后PHP就寻找与变量值同名的函数,并且尝试执行它。

8.回调函数

 回调函数(callback):指的就是具有callable类型的函数,一般用作参数的传递。如PHP内
 置函数call_user_func()可以接受用户自定义的回调函数作为参数。

9.匿名函数

 匿名函数:就是没有函数名称的函数,也称作闭包函数,经常用作回调函数参数的值。对于临
 时定义的函数,使用匿名函数无需考虑函数命名冲突的问题。

例:
		$sum = function($a, $b) {	// 定义匿名函数
		    return $a + $b;
		};
		echo $sum(100, 200);	// 输出结果:300
		
  除此之外,匿名函数还可以作为函数的参数传递,实现回调函数。
  
		function calculate($a, $b, $func)
		{
		    return $func($a, $b);
		}
		echo calculate(100, 200, function($a, $b) { 	// 输出结果:300
		    return $a + $b;
		});
		echo calculate(100, 200, function($a, $b) { 	// 输出结果:20000
		    return $a * $b;
		});

10.字符串函数

	substr()函数的第3个参数表示截取的长度,该长度的设置具体有以下4种情况。
		省略第3个参数时,将返回从指定位置到字符串结尾的子字符串。
		第3个参数为正数,返回的字符串将从指定位置开始,最多包含指定长度的字符,这取决于待截取字符串的长度。
		第3个参数为负数,返回的字符串中在结尾处将有个指定长度的字符被省略。
		第3个参数为0、false或null,将返回一个空字符串。

	替换指定位数的字符,在开发也是很常见的功能。例如,在各种抽奖环节中,为了保证用户的隐私,出现的手机号一般
	使用“*”将第4至7位的数字进行覆盖。

		$tel = '18810881888';		 // 随意输入一串数字作为手机号
		$len = 4; 			// 需要覆盖的手机号长度
		$replace = str_repeat('*', $len); 	// 根据指定长度设置覆盖的字符串
		echo substr_replace($tel, $replace, 3, $len);	// 输出结果: 188****1888

11.数学函数

		ceil()函数是对浮点数5.2进行向上取整,
		floor()函数是对浮点数进行向下取整,
		rand()函数的参数表示随机数的范围,第1个参数表示最小值,第2参数表示最大值。

	例:
			echo ceil(5.2);	// 输出结果:6
			echo floor(7.8);	// 输出结果:7 
			echo rand(1, 20);	// 随机输出1到20间的整数

12.时间日期函数

	在使用PHP开发Web应用程序时,经常会涉及日期和时间管理。
	例如倒计时、用户登录时间、新闻发布时间、购买商品时下订单的时间等。
	为此,PHP提供了内置的日期和时间处理函数,满足开发中的各种需求。


 时间日期的函数:

     函数名称                                                功能描述
     time()                             获取当前的Unix时间戳
     date()                             格式化一个本地时间/日期
     mktime()                           获取制定日期的Unix时间戳
     strotime()                         将字符串转化成Unix时间戳
     microtime()                        获取当前时间戳和微秒数
     
 时间戳的概念:
   概念:Unix时间戳(Unix timestamp)定义了从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数
   ,以32位二进制数表示。
   Unix纪元:1970年01月01日零点也叫作Unix纪元。

	time()函数用于获取当前时间的Unix时间戳,
	mktime()和strtotime()函数可将给定的日期时间转换成Unix时间戳,前者的参数分别表示“时分秒月日年”,后者
	可以是任意时间的字符串。
	函数microtime()用于获取当前Unix时间戳和微秒数,不设置参数时,返回值的形式前面一段数字表示微妙数,
	后面一段数字表示秒数;设置参数时,小数点前表示秒数,小数点后表示微秒数。

例:
	echo time();			            // 输出结果:1487666317
	echo mktime(0, 0, 0, 2, 21, 2017);	// 输出结果:1487606400
	echo strtotime('2017-2-21');	    // 输出结果:1487606400
	echo microtime();		        	// 输出结果:0.04142600 1487666098
	echo microtime(true);	        	// 输出结果:1487666098.0414
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值