一步一步学习PHP(3) php函数
1.方法概述首先,写一个最简单的函数,你可以只看它:html head title hello FP/title/head body?php函数CustomPrint($ str){ for($ I=0;$ i5$ I){ echo($ str);echo(' br/');} } CustomPrint(' Hello ');/body/html通过这个例子,相信大家都知道PHP中函数的一般写法。至于语法,和其他C语言没有太大区别,都是while、for、if等。至于其他区别,将在后面的文章中逐步讨论。好了,我来总结一下这个方法的要点:A. PHP的方法是用函数声明的,类似于大家熟悉的Javascript。b使用变量时,必须以美元符号($)开头。2.参数的引用传递和参数的值传递。相信大家在学习C语言的时候都会接触到。这里,用C#写一个例子:public void swap (int a,int b){ int temp=a;a=b;b=温度;}public void Swap(ref int a,ref int b){ int temp=a;a=b;b=温度;}在这里写一个PHP版本。php函数Swap1($a,$ b){ $ temp=$ a;$ a=$ b;$ b=$ temp}函数Swap2($a,$ b){ $ temp=$ a;$ a=$ b;$ b=$ temp}函数CustomPrint($ str){ echo($ str);echo(' br/');} $ a=1;$ b=2;swap 1(a,b美元);CustomPrint('值传递的结果是: ');CustomPrint('$a='。$ a);CustomPrint('$b='。$ b);$ a=1;$ b=2;swap 2(a,b美元);CustomPrint('引用传递的结果: ');CustomPrint('$a='。$ a);CustomPrint('$b='。$ b);在这个例子中,有两点我需要说明:a .值传递和引用传递的区别在于" " . B. CustomPrint('$a=')。参数前的$a );在这句话中,我们需要解释单引号和双引号的区别。它们之间只有一个区别,那就是变量名是否可以解析。这个例子足以说明问题:PHP $ a=1;echo(' $ a ');echo(' br/');echo(' $ a ');
最后说说性能问题。在传递值的时候,PHP需要先复制再传递,这样如果那些大的对象或者字符串,不仅会耗费时间,还会浪费空间。此时,如果引用被传递,则避免了消耗性能的复制操作。并且非常有利于性能的提升。3.作用域问题在C#中,由于变量在使用前必须声明,因此会涉及到一个作用域和一个子作用域的概念,而PHP中并没有这样的概念。我们来看一段C#代码:公共课学生{私有字符串名称;public void SayHello(){ HttpContext。当前。回应。写下(‘你好,我是’名字);}}也就是说,外部类声明的变量可以在方法内访问,但是在PHP中就不一样了:php $ name=' kym函数sayHello(){ if(isset($ name)){ echo(' Hello $ name ');} else { echo($ name未定义);} } SayHello();
这里有一个函数“isset”,它可以检测一个变量是否被定义,或者它是否是一个空字符串。这个结果表明,在函数体中不能访问外部变量$name。在这里,我想再提一点:一个对应于unset的函数:unset。此函数用于移除变量值。写一个简单的例子:php $ name=' kymif(isset($ name)){ echo(' Yes ');} else { echo(' No ');} unset($ name);if(isset($ name)){ echo(' Yes ');} else { echo(' No ');}?
这些将在后面的垃圾收集中详细提到。
版权声明:一步一步学习PHP(3) php函数是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。