欢迎来到站长教程网!

PHP教程

当前位置:主页 > 网络编程 > PHP教程 >

php函数入门基础知识有哪些?

时间:2020-06-22|栏目:PHP教程|点击:

php函数入门基础知识有哪些?

推荐教程:《php教程》

php函数入门基础知识有哪些?

php函数入门基础知识有:

1、函数的声明

function 函数名([参数1,参数2...]) { 函数体; return 返回值; }

2、使用双层for循环输出表格

function table(){ echo "<table align='center' border='1px' width='600px'>"; echo "<caption><h1>通过函数输出表格</h1></caption>"; for($out=0;$out<10;$out++){ $bgcolor = $out%2 == 0 ? "#FFFFFF" : "#DDDDDD"; echo "<tr bgcolor=".$bgcolor.">"; for($in=0;$in<10;$in++){ echo "<td>".$out*10+$in."</td>"; } echo "</tr>"; } echo "</table>"; }

3、函数tabel()改写

function table($tableName,$rows,$cols){ echo "<table align='center' border='1px' width='600px'>"; echo "<caption><h1>$tableName</h1></caption>"; for($out=0;$out<$rows;$out++){ $bgcolor = $out%2 == 0 ? "#FFFFFF" : "#DDDDDD"; echo "<tr bgcolor=".$bgcolor.">"; for($in=0;$in<$cols;$in++){ echo "<td>".($out*$cols+$in)."</td>"; } echo "</tr>"; } echo "</table>"; } table("此时你是我的唯一",5,3);

4、PHP变量的范围 (分为局部变量和全局变量)

局部变量也称为内部变量,是在函数内部声明的变量,其作用域仅限于函数内部。

局部变量从存储方式上可分为动态存储类型和静态存储类型。函数中的局部变量,如果专门声明为static存储类别,默认都是动态地分配存储空间的。

其中的内部动态变量在函数调用结束后自动释放。如果希望在函数执行后,其内部变量依然保存在内存中,应使用静态变量。在函数执行完毕后,静态变量并不会消失,而是在所有对该函数的调用之间共享,即在函数再次执行时,静态变量将接续前次的结果继续运算,并且仅在脚本的执行期间函数第一次被调用时被初始化。要声明函数变量为静态的,需要关键字static。自行理解!

function demo($one){ $two = $one; echo "在函数内部执行:$two+$one=".($two+$one)."<br/>"; } demo(200); echo "在函数外部执行:$two+$one=".($two+$one); //非法访问

全局变量也称外部变量,是在函数的外部定义的,他的作用域变量定义处开始,到本程序文的结尾。

在函数中若要使用全局变量,必须要利用global关键字定义目标变量,以告诉函数主体此变量为全局变量。

$one = 200; $two = 100; function demo(){ //在函数内部使用global关键字加载全局变量$one和$two global $one,$two; echo "运算结果:$two+$one=".($two+$one)."<br/>"; //300 echo "运算结果:".($GLOBAL['two']+$GLOBAL['one'])."<br/>"; }

5、PHP函数参数的种类

(1)常规参数的函数

string example(string name,int age,double height)

(2)伪类型参数的函数:

PHP的伪类型:mixed number callback 三种

mixed funName(mixed $args)

number funName(number $args)

(3)引用参数的函数:

如果函数中的形参中有使用"&"修饰的参数,则在调用该函数时就必须传入一个变量给这个参数,而不能传递一个值。

void funName(array $&arg)

(4)默认参数的函数:

默认值必须是常量表达式,不能是变量、类成员或者函数调用。PHP允许使用数组和特殊类型NULL作为默认参数。

mixed funName(string name[,string value[,int age]]) // 在参数列表中出现使用[]描述的参数 function person($name="张三",$age=20,$sex="男"){ echo "我的名字是:{$name},我的年龄是{$age},我的性别是{$sex}<br/>"; }

(5)可变个数参数的函数:

func_get_args();//将所有传递给脚本的函数的参数当作一个数组返回

func_num_args();//返回参数的总数

mixed func_get_arg(int $arg_num);//返回参数列表的某一项(0.....)

(6)mixed funName(string arg[,string ...])回调函数:函数参数为一个函数

mixed funName(callback arg) //在参数列表中使用伪类型callback描述了解变量函数、使用变量函数声明和应用回调函数,借助call_user_func_array()函数自定义回调函数,类静态函数和对象的方法回调;

//变量函数不能用于语言结构,例如echo() //print()、unset()、isset()、empty() //include()、require()及类似的语句 function one($a,$b){ return $a+$b; } function two($a,$b){ return $a+$b+$b*$b; } function three($a,$b){ rerurn $a*$a*$a+$b*$b*$b; } $result = "one"; //$result = "two"; //$result = "three"; echo $result(1,2);function filter($fun){ $fun(); } function test(){ echo "haha!"; } function test2(){ echo "houhou!"; } filter("test"); filter("test2");//haha!houhou!function fun($msg1,$msg2){ echo '$msg1='.$msg1; echo '<br/>'; echo '$msg2='.$msg2; } call_user_func_array('fun',array('Lamp','兄弟连'));//类静态调用和对象的方法调用 class Demo{ static function fun($msg1,$msg2){ echo '$msg1='.$msg1; echo '<br/>'; echo '$msg2='.$msg2; } } class Test{ function fun($msg1,$msg2){ echo '$msg1='.$msg1; echo '<br/>'; echo '$msg2='.$msg2; } } //类静态调用 call_user_func_array(array('Demo','fun'),array('Lamp','兄弟连')); //对象的方法调用 call_user_func_array(array(new Test(),'fun'),array('Lamp','兄弟连'));

callback("函数名称字符串"); //回调全局函数

callback(array("类名称字符串","类中静态方法名称字符串"));//回调类中的静态成员方法

callback(array(对象引用,"对象中方法名称字符串");//回调对象中的静态成员方法

递归函数:函数调用自身

6、使用自定义函数库

上一篇:PHP SPL 标准库之 Countable

栏    目:PHP教程

下一篇:PHP实现长轮询【代码示例】

本文标题:php函数入门基础知识有哪些?

本文地址:http://www.blue1000.com/wangluobiancheng/PHPjiaocheng/2047.html

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:1961407250 | 邮箱:1961407250#qq.com(#换成@)

Copyright © 2002-2022 BK网络学院版权所有 Power by DedeCms 粤ICP备19027147号-7