PHP - 函数

PHP函数与其他编程语言类似.函数是一段代码,它以参数的形式接受一个输入并进行一些处理并返回一个值.

你已经看过很多函数,比如 fopen() fread()等.它们是内置函数,但PHP也为您提供了创建自己的函数的选项.

有两个你应该清楚的部分和减号;

  • 创建PHP函数

  • 调用PHP函数

实际上你几乎不需要创建自己的PHP函数,因为已经为不同的区域和你创建了1000多个内置的库函数只需根据您的要求调用它们.

请参阅 PHP函数参考一套完整的有用函数.

创建PHP函数

创建自己的PHP函数非常容易.假设您要创建一个PHP函数,只需在您调用它时在浏览器上写一条简单的消息.下面的示例创建一个名为writeMessage()的函数,然后在创建它之后立即调用它.

请注意,在创建函数时,其名称应以关键字 function 开头,所有PHP代码都应放在{和}大括号内,如下面的示例所示 :

<html>
   
   <head>
      <title>Writing PHP Function</title>
   </head>
   
   <body>
      
      <?php
         /* Defining a PHP Function */         function writeMessage() {
            echo "You are really a nice person, Have a nice time!";
         }
         
         /* Calling a PHP Function */
         writeMessage();
      ?>
      
   </body>
</html>

这将显示以下结果 :

You are really a nice person, Have a nice time!

带参数的PHP函数

PHP为您提供了在函数内传递参数的选项.您可以传递尽可能多的参数.这些参数与函数内部的变量类似.下面的示例采用两个整数参数并将它们一起添加然后打印出来.

<html>
   
   <head>
      <title>Writing PHP Function with Parameters</title>
   </head>
   
   <body>
   
      <?php         function addFunction($num1, $num2) {
            $sum = $num1 + $num2;
            echo "Sum of the two numbers is : $sum";
         }
         
         addFunction(10, 20);
      ?>
      
   </body>
</html>

这将显示以下结果 :

Sum of the two numbers is : 30

按引用传递参数

可以通过引用将参数传递给函数.这意味着函数操作对变量的引用而不是变量值的副本.

在这些情况下对参数所做的任何更改都将更改原始变量的值.您可以通过在函数调用或函数定义中向变量名添加一个&符来通过引用传递参数.

以下示例描述了两种情况.

<html>
   
   <head>
      <title>Passing Argument by Reference</title>
   </head>
   
   <body>
      
      <?php         function addFive($num) {
            $num += 5;
         }         
         function addSix(&$num) {
            $num += 6;
         }
         
         $orignum = 10;
         addFive( $orignum );
         
         echo "Original Value is $orignum<br />";
         
         addSix( $orignum );
         echo "Original Value is $orignum<br />";
      ?>
      
   </body>
</html>

这将显示以下结果 :

Original Value is 10
Original Value is 16

PHP函数返回值

函数可以使用

您可以使用返回数组(1,2,3)从函数返回多个值,4).

以下示例采用两个整数参数并将它们一起添加,然后将它们的总和返回给调用程序.请注意, return 关键字用于从函数返回值.

<html>
   
   <head>
      <title>Writing PHP Function which returns value</title>
   </head>
   
   <body>
   
      <?php         function addFunction($num1, $num2) {
            $sum = $num1 + $num2;            return $sum;
         }
         $return_value = addFunction(10, 20);
         
         echo "Returned value from the function : $return_value";
      ?>
      
   </body>
</html>

这将显示以下结果 :

Returned value from the function : 30

设置函数参数的默认值

如果参数设置参数,则可以设置默认值函数的调用者没有传递它.

以下函数打印NULL,以防使用时没有向该函数传递任何值.

<html>
   
   <head>
      <title>Writing PHP Function which returns value</title>
   </head>
   
   <body>
      
      <?php         function printMe($param = NULL) {
            print $param;
         }
         
         printMe("This is test");
         printMe();
      ?>
      
   </body>
</html>

这将产生以下结果 :

This is test

动态函数调用

可以将函数名称作为字符串分配给变量,然后完全按照您的方式处理这些变量函数名称本身.以下示例描述了此行为.

<html>
   
   <head>
      <title>Dynamic Function Calls</title>
   </head>
   
   <body>
      
      <?php         function sayHello() {
            echo "Hello<br />";
         }
         
         $function_holder = "sayHello";
         $function_holder();
      ?>
      
   </body>
</html>

这将显示以下结果 :

Hello