zoukankan      html  css  js  c++  java
  • 阐述php(五岁以下儿童) 注意事项和使用功能

    1、函数声明

    <?php
    
    	/**
    	 * function 函数名(參数1, 參数2.... ){
    	 *  	函数体;
    	 *  	返回值;
    	 * }
    	 */
    	
    	$sum = sum(3, 4);
    	echo $sum;
    	
    	function sum($x, $y){
    		$sum = 0;
    		$sum = $x * $x + $y + $y;
    		return $sum;
    	}
    ?>

    2、变量的范围

    局部变量: 在函数中声明的变量就是局部变量, 仅仅能在自己的函数内部使用
    全局变量: 在函数外声明的变量就是全局变量, 在变量声明以后直到整个脚本结束前都能够使用, 包含在函数中和 { } 中都可使用

    2.1 知识点: 我们无法分辨出PHP的变量是声明还是使用

    <?php
    	$a = 10;
    	function demo($a){
    		$a += 10;
    		echo $a . '<br>';
    	}
    	demo($a);
    	echo $a;
    	// 结果: 20, 10
    	// PHP的变量分不出 $a 是声明还是使用
    ?

    >

    2.2 知识点: 函数中使用全局变量必须使用globalkeyword, 在声明global之后的变量才是全局的变量

    <?php
    	$a = 10;
    	
    	function demo() {
    		global $a;
    		$a += 10;
    		echo $a . " demo <br>";
    	}
    	
    	function test() {
    		global $a;
    		$a += 5;
    		echo $a . "test <br>";
    	}
    	
    	echo $a . " ----<br>";  // 10 ----
    	demo();                 // 20 demo 
    	echo $a . " !!!!<br>";  // 20 !!!!
    	demo();                 // 30 demo 
    	echo $a . " @@@@<br>";  // 30 @@@@
    	test();                 // 35 test 
    	echo $a . " ####<br>";  // 35 ####
    ?

    >

    静态变量: 仅仅能声明在函数中(类中), 不能在全局声明, 变量前使用statickeyword修饰

    2.3 知识点: 静态变量在静态代码块中存储, 它的值能够一个函数多次调用之间共享, 但仅仅在第一次调用函数时声明到内存

    以后再调用时就不再声明而直接使用(和Java类似)

    <?php
       function test(){
    	   static $a = 0;
    	   $a++;
    	   echo $a."<br>";
       }
    
      test(); // 1
      test(); // 2
      test(); // 3
    ?>

    3、变量函数

    事实上这个和JS又非常类似, 比如: 定义$var = hello, 下次使用$var()时就将寻找与变量值同名的函数hello()

    <?

    php function one($a, $b){ return $a + $b; } function two($a, $b){ return $a * $a + $b * $b; } function three($a, $b){ return $a * $a * $a + $b * $b * $b; } //$var = one; //$var = "two"; $var = three; echo "结果:".$var(3, 4)."<br>"; // 91 ?>


    4、系统函数

    4.1 常规函数  
         bool copy (string source, string dest)

    4.2 带有mixed, mixed表示能够传不论什么类型的数据
          bool chown (string filename, mixed user)
           

    4.3 带有&參数的函数, 表示引用赋值, 这个參数不能传值, 仅仅能传一个变量。然后函数将变量的值改变。

          我们在使用这个变量时,值也是变化的(和Java中传引用又是一样的)

          bool arsort (array &array [, int sort_flags])
    <?php
    	$arr=array(1, 9, 5, 8, 3, 4);
    	sort($arr);
    	print_r($arr);
    ?>
    4.4 默认函数, 带有[]的函数, 表示这个參数是可选的,假设你传值了就使用你传的值,假设没有传值则使用默认值
         bool arsort (array &array [, int sort_flags])

    <?php
    	function demo($a=1, $b=20, $c){
    		echo "### $a ### $b ### $c ###<br>";
    	}	
    	demo(8,9);
    ?>
    4.5 带有...的參数函数。 ...表示能够传随意多个參数
          int array_unshift (array &array, mixed var [, mixed ...])

    <?php
    	function demo(){
    		  $sum = 0;
    		  for($i = 0; $i < func_num_args(); $i++){
    		  	  $sum += func_get_arg($i);
    		  }
    		  return $sum;
    	 }
    	 
    	echo demo(1, 2, 3, 4, 5, 6, 7, 8, 9);
    ?>

    4.6 回调函数 带有callback,  就是调用这个函数时须要我们传一个函数进来(函数名,函数名字串)
          array array_filter (array input [, callback callback])

    <?php
       function demo($n){
    	   	if($n % 2== 0){
    			return true;
    	   	}else{
    			return false;
    	   	}
       }
       
       $a = array(1, 2, -3, 4, -5, 6, -7, 8, 9);
       print_r(array_filter($a, demo));  // Array ( [1] => 2 [3] => 4 [5] => 6 [7] => 8 ) 
    ?

    >


    5、内部函数

    php能够在函数内部再声明函数, 目的就是在函数的内部调用以帮助外部函数完毕一些子功能.

    <?php
    	function score($php, $java) {
    		function php($php) {
    			if ($php > 60)
    				return "及格";
    			else
    				return "不及格";
    		}
    		
    		function java($java) {
    			if ($java > 60)
    				return "及格";
    			else
    				return "不及格";
    		}
    	
    		$total = $php + $java . "分";
    		$agv = $total / 2  . "分";
    		echo "你的php成绩是 {$php} 分, " . php($php) . "<br>";       // 调用内部函数 php()
    		echo "你的java成绩是 {$java} 分, " . java($java) . "<br>";   // 调用内部函数 java()
    		echo "你的总分是: {$total} <br>";
    		echo "你的平均分是:{$agv} <br>";
    	}
    	
    	score(50, 90);
    ?

    >


    6、递归函数

    所谓的递归函数就是在自己的内部调用自己的函数

    <?php
        function demo($num){
        	echo $num."<br>";
    		if($num > 0){
    			demo($num - 1);   // 自己调用自己
    		}else{
    			echo "--------------------<br>";
    		}
    	
    		echo $num."<br>";
        }
    
        demo(3);
        
    	/*
    		3
    		2
    		1
    		0
    		--------------------
    		0
    		1
    		2
    		3
    	*/
    ?>

    7、重用函数

    所谓的重用函数事实上就是把php, html, txt等文件或者其它文件include进来

    require:    用于静态包括(如文件头, 文件尾等固定的东西)

    include:    用于动态包括(不确定的文件名称)

    require_once: (仅仅包括一次, 不存在函数名冲突问题, 但性能没require高)

    include_once: (同上)

    用法: include "config.inc.php";     include("config.inc.php")

    <?php
       include_once "test.inc.php";
       echo $a."<br>";
       test();
       
       /*
    	    10
    		##############
        */
    ?>
    test.inc.php

    <?php
    	$a=10;
    
    	function test(){
    		echo "##############<br>";
    	}
    ?>


    版权声明:本文博主原创文章。博客,未经同意不得转载。

  • 相关阅读:
    《从优秀到卓越》 《麦肯锡方法》读后感
    程序员简单运动策划书
    Effective Java2读书笔记创建和销毁对象(二)
    Effective Java2读书笔记创建和销毁对象(三)
    Effective Java2读书笔记创建和销毁对象(四)
    Effective Java2读书笔记创建和销毁对象(一)
    浅谈EasyUI的使用
    UrlRewriteFilter(1):安装配置
    Struts2对国际化的支持笔记
    JSP页面之“IE无法打开Internet 站点…… 已终止操作”问题
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4810407.html
Copyright © 2011-2022 走看看