php常规知识考察:自定义函数及内部函数
1.变量的作用域和静态变量
函数的参数以及参数的引用传递
函数的返回值以及引用返回
外部文件的导入
系统内置函数的考察
变量的作用域也称为变量的范围,变量的范围即他定义上下文的背景(也是它生效的范围)。大部分php变量只有一生效的范围,这个单独的范围也包括include 和require 引入的文件。
global关键字
$GLOBALS 及其他超全局数组
静态变量仅在局部函数域中存在,当程序执行离开扯作用域时,其值不会消失。
static关键字
1.仅初始化一次
2.初始化时需要赋值
3.每次执行函数该值会保留
4.修饰的函数是局部的,仅在函数内部保存
5.可记录函数的调用次数,从而在某些条件下终止递归:
- function myFunc(){
- static $a = 1;
- echo $a++;
- }
- myFunc(); //1
- myFunc(); //2
- myFunc(); //3
- <?php
- $count = 5;
- function getCount(){
- static $count;
- return $count++;
- }
- echo $count; //5
- $count++;
- echo getCount(); //null
- echo getCount(); //1 null + 1 = 1
- ?>
默认情况下函数通过值传递,如果希望函数修改它的值,则必须通过引用传递。
- <?php
- $a = 1;
- function myFun(&$a){
- $a = 100;
- }
- myFun($a);
- echo $a; //100
- ?>
2.函数的返回值
值通过可选的放回语句(return)返回
可以返回包含数组或对象的任意类型
返回语句会终止函数的执行,将控制权交回函数的控制处
省略return 返回值为null
不可能有多个返回值
从函数返回一个引用,必须在函数声明和指派返回值时给派返回值给一个变量时,都使用引用运算符&
- <?php
- function &myFun(){
- static $b = 1;
- return $b;
- }
- $a = myFun();
- echo $a; // 10
- $a = &myfun();
- $a = 100;
- echo myfun(); //100
外部文件的导入
include/reqlude 的区别 警告/致命错误 include_once/reqlude_once
3.系统内置函数
时间与日期:date(),strtottime(),time(),miketime(),microtime(),date_default_timezone_set()
ip处理函数:iptolong(),longtoip()
打印处理:print(),printf(),print_r(),echo,sprintf(), var_dump(), var_export()
序列化和反序列化函数:serialize(),unserialize() https://www.cnblogs.com/yamtsin/p/5922872.html
字符串处理函数:implod()
解题方法:
着重记忆php函数定义的相关内容,理解变量作用域,静态变量,函数参数,和返回值得相关内容,重点记忆总结的内置函数。