博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php04
阅读量:7247 次
发布时间:2019-06-29

本文共 3590 字,大约阅读时间需要 11 分钟。

1.1:函数概念

  函数就是一段封装的代码,可以随时调用

  1.重复的事情可以用函数进行封装,

echo 'hello';echo 'world!!!!
';echo 'hello';echo 'world!!!!
';echo 'hello';echo 'world!!!!
';//helloworld!!!! helloworld!!!! helloworld!!!!

  用函数封装,然后调用。

function hello(){    echo 'hello';    echo 'world!!!!
';}hello();hello();hello();//helloworld!!!! helloworld!!!! helloworld!!!!

  2.定义一个函数(求两个数的和)

function add($a,$b){      echo $a+$b;  }  add(1,2);  //3  add(2,3);     //5

  3.函数可以把运算结果返回给调用者

function add($a,$b){      return $a+$b;  }  add(1,2);    add(2,3);

  此计算器的运算过程如下

function add($a,$b) {   //赋值过程,看不到,但是内部确实如此       $a = 3;       $b = 5;       return $a+$b;   }   echo add(3,5);  //8

4.2:函数的定义格式

  无论函数有没有参数[可以没有参数],都需要在函数名后面加上小括号

function 函数名(参数1,参数2,...,参数n){      //函数体,要进行的操作      return 某值/表达式  }

  return的作用:

  return返回一个结果 谁能捕捉到这个调用结果呢?调用结束后,调用行可以捕捉return的结果

  函数的命名规范:

  对于函数,命名规则和变量是一样的,但是函数不区分大小写. 

  注意: 虽然不区分大小写,但是声明时和调用时大小写要保持一致

4.3:函数执行与返回流程

  1.函数是机器,调用才能执行

function say() {

echo 'hello<br />';
}
function he($a,$b) {
$sum = $a + $b;
return $sum;
}
echo 'good good study<br >';
say();
//执行权进入到say函数,函数结束后,交回执行权
echo 'day day up';
//good good study
// hello
// day day up

  什么时候交回执行权?函数结束后  在return后加入语句

function he($a,$b) {  $sum = $a + $b;  return $sum;    echo '~~~~~~~~~!';   }    echo he(3,2);  //5

  碰到return语句,也要交回执行权  所以在return后再写语句是不执行的,因为执行权已经交回 

4.4:函数传值的方式

function he($a,$b) {  $sum = $a + $b;  return $sum;   }    echo he(3,2);  //5

4.5:可选参数

  1.相乘加倍函数

function mult($num,$rate) { return $num*$rate; }  echo mult(4); echo mult(4,5);

  2.如果两个参数,我只给定一个,另一个参数不指定,但是默认有一定的参数 --- 可选参数

function mult($num,$rat=5) { return $num*$rat; }  echo mult(4); //20

  3.默认参数应写在最后

4.6:函数作用域

  变量的作用域,就是变量在函数里,和不在函数里

  对于php而言,函数的作用域非常简单,它就区分函数内和函数外

function t1(){    echo $a;    $b=5;}$a=2;t1();echo $b;//Undefined variable: a//Undefined variable: b

  函数内部的变量和函数外部的变量互不干扰,函数内变量成为"局部变量",

  在php页面中声明的,且在函数外部变量成为"全局变量";

  global全局变量

function t1(){    global $a;//这句话是声明,$a这个变量就去全局找    $a+=1;    echo $a;  //2}$a=2;echo $a,'
'; //3t1();echo '
';echo $a,'
'; //3

4.7:动态调用函数

  php非常的灵活,我们在学习变量的时候,知道,可以拿一个变量的值当另一个变量的名

  变量值也可以当函数名来调用

function good() { echo 'hi'; }function bad() { echo 'gun'; }$heart = 'good'; good();//hi $heart();//hi 这是一个函数的调用,然而并没有使用函数名来调用$heart = 'bad'; bad();//gun $heart();//gun

4.8:时间戳函数

  时间戳函数: time() 返回自从 Unix 纪元(格林威治时间 1970 年 1 月 1 日 00:00:00)到当前时间的秒数。

   microtime() 返回当前 Unix 时间戳和微秒数

echo time(),'
';//1547303854

  mixed是混合的意思,代表返回的类型不止一种 精确到微妙的函数

echo microtime(),'
';//0.09689400 1547303916

4.9:时间戳格式化

  date — 格式化一个本地时间/日期

  1.前一天时间

$lastday = time()-24*3600;echo date('Y年m月d日 H:i:s',$lastday);

  2.不写第二个参数,默认是time();当前时间戳

$lastday = time();echo date('Y年m月d日 H:i:s',$lastday),'
';echo date('Y-m/d H:i:s',$lastday),'
';// 2019年01月12日 15:45:19// 2019-01/12 15:45:19

  3.国外写法,将年份放在后面也是可以的

$lastday = time();echo date('Y年m月d日 H:i:s',$lastday),'
';echo date('Y-m/d H:i:s',$lastday),'
';echo date('m/d-Y H:i:s',$lastday),'
';// 2019年01月12日 15:45:19// 2019-01/12 15:45:19//01/12-2019 15:47:12

4.10:日期解析函数

  mktime() — 取得一个日期的 Unix 时间戳 

  strtotime() — 将任何英文文本的日期时间描述解析为 Unix 时间戳

  checkdate() — 验证日期是否合法

  1.mktime()

//mktime(秒/分/时/);给定一个日期,返回这个日期的时间戳 echo mktime(18,30,16,1,12,2019);//1547314216

  2.strtotime() 

//strtotime();可以口语化的转化时间戳echo strtotime("now"),'
';echo strtotime("-1 day"),'
';echo strtotime("+1 week"),'
';// 1547304884// 1547218484// 1547909684

  3.checkdate()

//checkdate()  负责检测日期是否合法 var_dump(checkdate(2,30,2001)); var_dump(checkdate(2,29,1996)); var_dump(checkdate(7,30,2015));//bool(false) bool(true) bool(true)

 

转载于:https://www.cnblogs.com/Just-HQ/p/10261399.html

你可能感兴趣的文章
[转]使用storyboard实现页面跳转,简单的数据传递
查看>>
数据分析核心包pandas
查看>>
android NDK 学习笔记(3)---eclipse 环境自动创建头文件.h ---javah
查看>>
时间模块
查看>>
Docker Mysql部署
查看>>
Ubuntu安装sublime
查看>>
React.js实现原生js拖拽效果及思考
查看>>
搭建负载均衡的环境(利用虚拟机上的四台centos)
查看>>
消息队列的面试题2
查看>>
SublimeText2 快捷键一览表
查看>>
阿里云RDS数据库备份文件恢复到本地数据库
查看>>
嵌入式软件设计第10次实验报告
查看>>
【笔记】MD5加密
查看>>
效率神器 Workflow 实例分享
查看>>
我的Android进阶之旅------>Android安全退出应用程序的几种方式
查看>>
我的Android进阶之旅------>Android中StateListDrawable支持的状态
查看>>
Java运行时内存划分
查看>>
To do List
查看>>
live555运行时报错:StreamParser internal error ( 86451 + 64000 > 150000)
查看>>
常识积累
查看>>