好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php函数定义与函数&引用用法 - php函数

php函数定义与函数&引用用法

函数定义 :1.函数是一个被命名的,2.独立的代码段,3.函数执行特定任务,4.并可以给调用它的程序返回一个值.

函数的优点: 1.提高程序的重用性,2.提高程序的可维护性,3.可以提高开发效率,4.提高软件的可靠性,5.控制程序的复杂性.

函数的声明:

  function  函数名(){      }     function  函数名(参数1,参数2,参数...)   {     函数体    }   function  函数名()    {     函数体;    返回值;   }     function  函数名(参数列表...)    {     函数体;     返回值   } 

注意:

一、函数必须调用才能执行,可以在声明之前调用,也可以在声明之后调用.

二、函数名命名和变量一样,aaa bbb ccc aaaBbbCcc(第一单词小写,以后每个单词首字母大写)

三、函数在声明时不能重名

四、可以通过向函数传递参数,改变函数的行为

形参:在声明函数时,声明的参数,参数就是变量,多个参数用,分开

实参:调用函数时传给形参数值(数据,也可以是变量)

五、如果没有返回值则称为过程

六、通过使用return语句返回数据

七、函数执行到return语句就结束,不要再这个语句后写代码,也可以用return结束函数的执行.

函数名的作用:

1.调用函数,开始执行函数

2.可以向函数中传递数据

3.函数名就是返回的值

PHP 函数: 所有的函数都使用关键词 "function()" 来开始.

命名函数 - 函数的名称应该提示出它的功能,函数名称以字母或下划线开头.添加 "{" - 开口的花括号之后的部分是函数的代码.

插入函数代码,添加一个 "}" - 函数通过关闭花括号来结束.

<html>  <body>  <?php  function  writeMyName()    {     echo   "David Yang" ;    }    writeMyName();  ?>  </body>  </html> 

另一种输出方式,现在,我们要在 PHP 脚本中使用这个函数了:

<html>  <body>    <?php  function  writeMyName()    {     echo   "David Yang" ;    }    echo   "Hello world!<br />" ;  echo   "My name is " ;  writeMyName();  echo   ".<br />That's right, " ;  writeMyName();  echo   " is my name." ;  ?>  </body>  </html>  //以上代码的输出:   Hello world!  My name is David Yang.  That's right, David Yang is my name 

函数引用&:

function  &c()   {    } 

&c是什么意思,有什么好处与坏处 这个我也不明白

function  c(& $var )   {   $GLOBALS [ 'MALL' ] =& $var ;   }  

&$var和普通传值有什么区别,这个是引用的意思,可以在函数内部修改$var的值,举个例子:

function  c( $var ){  $var = $var +1;  }  $var =10;  c( $var ); 

echo $var;这个输出是10,如果函数改成function c(&$var){}

系统函数用法: PHP数组的交集array_intersect(),array_intersect_assoc(),array_inter_key()函数的小问题,求两个数组的交集问题可以使用array_intersect(),array_inersect_assoc,array_intersect_key来实现,其中array_intersect()函数是求两个数的交集,返回一个交集共有元素的数组(只是数组值得比较)、array_intersect_assoc()函数是将键值和值绑定,一起比较交集部分、array_intersect_key()函数是将两个数组的键值进行比较,返回键值交集的数组.

但实际应用中也遇到了一些小问题,正如下,实例:

<?PHP           $array  =  array ( "red" => "Red" , "green" => "red4" , "Red15" => "Red" ,7=> "Level" , "Width" => "Red" , "azzzz1" => "art" , "peak" =>158);          $array1  =  array ( "red" => "Red2" , "greena" => "red" , "Red15" => "Red" ,7=> "Level" , "Width" => "Red" , "azzzz" => "art" , "peak" =>158);          $num  =  array_intersect ( $array , $array1 );          print_r ( $num );         echo   "<br />" ;           $num  =  array_intersect_assoc ( $array , $array1 );          print_r( $num );         echo   "<br />" ;  //开源代码phpfensi测试数据   $num  =  array_intersect_key ( $array , $array1 );          print_r ( $num );      ?>    //运行结果:     Array ( [red] => Red [Red15] => Red [7] => Level [Width] => Red [azzzz1] => art [peak] => 158 ) Array ( [Red15] => Red [7] => Level [Width] => Red [peak] => 158 ) Array ( [red] => Red [Red15] => Red [7] => Level [Width] => Red [peak] => 158 ) 

总结:

1.array_intersect()函数进行的比较只有数组值的比较,而且存在如]Red[和]Red2[比较时会返回"Red",反之则不会返回"Red2";

2.array_intersect_assoc()函数是将数组的值与键值一起比较,而且不会存在array_intersect的情况,适用于较严格的比较;

3.array_intersect_key()函数适用于比较两个数组键值的交集,返回的并不只有键值,而是键值和对应的数组值

实例:

<?php  $a  =  array (           'a'  =>  '你好' ,           'b'  =>  'bb'   );  //header('Content-Type:application/json; charset=UTF-8');   echo  json_encode( $a ). "n" ;  function  replace_unicode_escape_sequence( $match )  {           return  mb_convert_encoding(pack( 'H*' ,  $match [1]),  'UTF-8' ,  'UCS-2BE' );  }  echo  preg_replace_callback( '/\u([0-9a-f]{4})/i' , 'replace_unicode_escape_sequence' ,json_encode( $a )). "n" ;  ?>

查看更多关于php函数定义与函数&引用用法 - php函数的详细内容...

  阅读:45次