程序员人生 网站导航

php函数详解之学习笔记

栏目:php教程时间:2014-04-25 13:51:17

在php中函数是常用的一种合理的可以重复使用的方法,函数分别系统函数与用户自定义函数,下面我来给大家介绍这两种php函数的使用方法,有需了解的朋友可参考.

系统函数

如phpinfo() ;这就是一个系统函数了,关于系统函数我们不多说,直接参考php教程或手册都会有.

用户自定义函数

php 引入函数的概念使程序变得简洁,运算效率更快.函数是实现某种功能的一段程序,这段程序相当于一个模块,需要时用一些简单的命令就可以调用出来使用,不用每次都重新编写.就好象电脑,我们不需要了解里面的复杂结构,只要了解它提供的功能直接使用即可.

php自定义函数-php虽然内置了很多实用的函数,可是不可能满足实际设计的需要,这时我们就需要自己创建函数.

基本结构形式:

实例代码如下:

  1. function 函数名(参数){ 
  2.  语句体 

function为声明函数;函数名必须唯一,和变量名不同的是函数名不区分大小写;function和函数名之间必须要有空格;参数可以省略,也可以添加多个参数,用英文逗号隔开.

php调用函数-当我们定义了函数后,就可以通过以下结构形式对函数进行调用:

函数名(参数)

参数可以省略,但必须保留括号.

实例代码如下:

  1. <?php  
  2.  function e(){ 
  3.   $i=5+6; 
  4.   echo $i
  5.  } 
  6.  e(); 
  7. ?> 

函数的传递参数

如果函数定义了参数,那么在调用函数时就必须注意参数值的传递问题.php函数参数传递的方式有两种:按值传递和引用传递,默认为按值传递.

1、按值传递:

实例代码如下:

  1. <?php  
  2.  function sum($num,$price){ 
  3.   $total=$num*$price
  4.   echo "总价格为:$total"
  5.  } 
  6.  sum(10,78); 
  7. ?> 

默认参数

php函数默认参数-如果用一个函数时并没有提供该参数的值,那么该参数将使用函数制定的默认值,默认值必须已经在函数定义时赋值.

实例代码如下:

  1. <?php  
  2.  function add($a,$b=10){  /* 定义变量$b默认参数 */ 
  3.   $sum=$a+$b
  4.   echo $sum ."<br>"
  5.  } 
  6.  add(1,5);   /* 按值传递参数代替默认参数 */ 
  7.  add(1);    /* 没有给$b传递参数将采用默认值 */ 
  8. ?> 

函数返回值

我们在设计程序时,很多时候不希望将函数的运行结果直接在浏览器显示出来,这时可以通过return语句先将函数值调用出来再进行其它操作.

php函数返回值实例:

实例代码如下:

  1. <?php  
  2.  function add($a,$b=10){   
  3.   $sum=$a+$b
  4.   return $sum/* 将$sum的值赋给函数 */ 
  5.  } 
  6.  $sum=add(1,5);  /* 这里变量$sum得到函数的值 */    
  7.  echo $sum ."<br>"
  8. ?> 

函数嵌套调用

函数的内部不但可以是一般的执行语句,也可以是函数,这就是php函数嵌套的用法.函数嵌套只一个函数里面还调用了其它函数,这里要理解的是各函数均处于平行关系,函数的定义是独立的.就像一个容器里面可以放置很多个小容器,而这些容器彼此独立,各自容纳自己的东西.

实例代码如下:

  1. <?php  
  2.  function volume($l,$w){ 
  3.   function height($a){ 
  4.    $a=$a/2; 
  5.    return $a
  6.   } 
  7.   $a=$l*$w
  8.   $v=$a*height($a); 
  9.   echo $v
  10.  } 
  11.  volume(8,3); 
  12. ?> 

函数递归调用

什么是php递归函数?在解释这个概念之前,我们先来看一个数学例子.如果要算出n的阶乘,即n!,则首先应该知道(n-1)!,而要知道(n-1)!,又必须知道(n-2)!.以此类推,直至1!=1,再返回计算2!,3!…(n-1)!,n!,才能最终得出n阶乘的结果.

php函数递归调用的含义就是函数能够调用自身,这种直接或者简介调用函数本身的操作在php语言中是允许的,成之为递归函数.

实例代码如下:

  1. <?php  
  2.  function calculate($n){ 
  3.   if($n==0) 
  4.   return 1; 
  5.   else 
  6.   return $n*calculate($n-1); 
  7.  } 
  8.  $s=calculate(3); 
  9.  echo $s
  10. ?> 
------分隔线----------------------------
------分隔线----------------------------

最新技术推荐