用户自定义函数也称自定义函数,它们不是PHP提供的,是由程序员创建的.由于自己创建了这样的函数,所以就可以完全控制这些函数.因此可以让一个函数完全按照自己希望的方式运行.

1,申明函数

   在PHP中,定义函数的方法同其他编程语言几乎一样.下面是PHP申明函数的语法结构:

Function function_name($argument1,$argument2,$argument3,......$argumentn)
    {
      //函数代码code
      Return 返回值;
     }

       以上语法结构中,关键字的含义如下.

   (1)function:用于申明用户自定义函数的关键字.

   (2)function_name:要创建的函数名称.该名称将在以后被调用时使用.函数名应该唯一,因为PHP不支持重载.在命名函数的时候,需要遵循和变量命名

       相同的原则.但是函数名不能以$开头,而变量可以.

   (3)argument:要传递给函数的值.函数可以有多个参数,它们之间用逗号.但是参数项是可选的,可以在调用函数的时候不传递任何参数.

   (4)code:是在函数被调用的时候执行的一段代码.如果有两条或者多条语句,则代码必须用大括号"{}"括起来.但是,如果只有一条代码,则不需要大括号.

   (5)Return:将调用的代码需要的值返回.任何类型都可以返回,包括列表和对象.这导致函数立即结束它的运行,并且将控制权传递回它被调用的行.

2,无参数函数

代码func_1.php
    <?php
    require 'a.php';
   echo "我不会被执行!";   ?>

3,有参数函数

      PHP支持按值传递参数(默认),通过引用传递和默认参数值.可变长度参数列表仅在PHP4和后继版本中被支持.

   (1)值传递参数.按值进行参数传递是PHP的默认传递方式.使用这个方法,必须在主程序调用时传递一个值(参数).

代码sum.php
       <?php
         function sum ($a,$b)
         {
          Echo $a+$b;
          }
         sum(100,20);   //开始调用该函数
       ?>

  (2)引用参数.在按照值传递的时候,只有参数的副本传递给被调用的函数.但是在被调用函数内部对这些值的任何修改,都不会影响调用函数

      中的原始值.引用传递其实也就是地址传递,将一个变量的地址作为参数传递.

代码valuechange.php
     <?php
        $myNum=100;
        function Valuechange ($number)
       {
         $number=$number+1;
         Echo $number . "<br>";
       }
       Valuechange($myNum);
       Echo $myNum;
    ?>

  (3)默认值参数.使用默认的参数值传递方法,函数必须在调用的时候有一个参数.如果没有使用的值,就把默认值传递给函数参数.默认值必须是常量表达式,不是变量,

      类成员或者函数调用.

      提示:当使用默认参数时,任何默认参数必须放在非默认参数的右侧;否则,可能函数不会按照预期的情况工作.

      代码func_default.php

<?php
         $myNum=100;
         function Valuechange ($number)
         {
           $number=$number+1;
           Echo $number . "<br>";
          }
           Valuechange($myNum);
           Echo $myNum;
       ?>