>백엔드 개발 >PHP 튜토리얼 >PHP 함수 선언 및 사용법

PHP 함수 선언 및 사용법

大家讲道理
大家讲道理원래의
2017-05-28 09:42:411635검색


1. 함수 이름은 식별자 중 하나입니다. 영숫자 밑줄만 사용할 수 있으며 숫자로 시작할 수 없습니다.

함수 이름의 이름은 "작은 낙타 표기법" FUNC를 준수해야 합니다. (), func() ,Func();

함수 이름은 대소문자를 구분하지 않습니다.

함수 이름은 기존 함수 또는 내장 함수 이름과 같을 수 없습니다.

2.

function_exists("func" ; 1이면 false는 표시되지 않습니다. 함수 외부에서 사용해야 하는 경우 반환할 함수에서 return 키워드를 사용해야 합니다.

2. 전역 변수: 함수 외부에서 선언된 변수를 전역 변수라고 합니다.

3.(더 일반적으로 사용됨) 함수에서 사용되는 변수는 기본적으로 전역 변수를 사용합니다. 전역 변수를 소개하려면 전역 키워드를 사용해야 합니다.

함수에 있는 변수 이름

, 전역 변수 이름과 반복되는 경우 전역 위는 함수의 지역 변수이고 아래는 전역입니다.

4.$GLOBALS[''] Global array;

$GLOBALS[ 'a3'] 배열은 PHP에 의해 내장된 전역 배열입니다. 배열에 값을 추가합니다. 함수 내부 또는 외부에서 선언되었는지 여부에 관계없이 어디에서나 직접 사용할 수 있습니다: $GLOBALS['a3'] =10;

5. 함수에서 전역 변수를 사용하는 또 다른 방법이 있습니다. 매개변수를 매개변수에 전달하면 전역 변수를 함수 내에서 사용할 수 있습니다. 그러나 전달 후 매개변수는 로컬 변수이므로 내부적으로 변경되며 외부적으로는 변경되지 않습니다. 전달됨 매개변수는 주소입니다. .function func($a1,&$a2){}func($a1,$a2);

(이유) $a1은 내부적으로 변경되는 로컬 변수입니다. 그러나 외부적으로는 변경되지 않습니다. $a2는 내부 변수의 주소이기도 합니다. ;

                                                                                               【staticVariables】

정적 변수: 를 사용하세요. static key Word 선언, static $num=10;

정적 변수의 특징:

정적 변수는 함수가 처음 로드될 때 선언됩니다. 정적 변수는 즉시 해제되지 않습니다. 함수가 사용된 후에는 전체 스크립트 실행 중에 정적 변수가 한 번만 선언됩니다.

       동일한 함수가 여러 번 호출되고 동일한 정적 변수를 공유합니다.的 [函 함수의 매개변수

전송 방법]

인삼은 모양보다 적지 않고 모양보다 많을 수 있습니다. 는 오류가 보고됩니다

1. 기존 매개변수 전송:

function fun($a){

$a+=10;

return $a;

}

echo fun(10);

2.인용문 유형 매개변수:

$a=10;

function func(&$a){

$a+=10;

}func($b);

참조 매개변수가 전달되고, 변수는 함수 내부에서 수정되며, 변경 사항은 함수 외부에서 동기화됩니다. , 실제 매개변수는 리터럴일 수 없습니다.

3. 기본 매개변수:

function func($a,$b=10){

return $a+$b;

}

echo func(30 ); //$b의 기본 매개변수는 10

매개변수에 기본 매개변수와 기본이 아닌 매개변수가 모두 있는 경우 기본 매개변수 목록은 기본이 아닌 매개변수 목록 뒤에 와야 합니다. 기본이 아닌 매개변수는 보장되어야 합니다. 할당 순서.

func_get_args(); //모든 매개변수 목록 가져오기(배열)

func_num_args(); count

(func_num_args() ); 이 변수를 변수 함수라고 합니다. ()를 추가하여 함수 내용을 호출할 수 있습니다.

                                                                                 [콜백 기능]

weight 变 1. 변수 함수를 사용하여 콜백 함수를 맞춤 설정합니다. 함수 ($ func) {func ();}-& gt; () {} --- & gt; func ("f")

2 c

all_user_func_array 및 call_user_func 사용자 정의 콜백 함수를 사용하세요.

두 함수의 첫 번째 매개변수는 콜백 함수입니다. 현재 콜백을 나타냅니다.

다릅니다. 요점은 call_user_func_array()의 두 번째 매개 변수가 배열이고 배열의 각 값이 콜백 함수의 매개 변수 목록에 할당된다는 것입니다. 이는 Apply()와 동일합니다. js; 및 call_user_func는 콜백 함수의 매개변수 목록으로, js의 call()과 동일합니다.

eg:call_user_func_array("func", 배열(1,2,3));---> func(1,2,3);

call_user_func("func" 1,2,3);---->func(1 ,2,3);

[

익명 함수 ]

변수 함수 $fun()/func()을 호출하는 방법은 여러 가지가 있으므로 함수 호출을 보다 통일되게 만들기 위해 , 익명 함수가 생성되었습니다. 익명 함수의 함수 본문 뒤에는 “;” 선언이 필수!!!

익명 함수 자체도 변수이며 var_dump;

를 사용하여 object classtype으로 감지됩니다.

=

예: 숫자의 계층 구조 계산:

function jiec($num){    static $jie=1;    //函数执行完不会立即释放
    if($num>0){
        $jie*=$num;   //3
        jiec(--$num);
    }    return $jie;
}
 echo jiec(10);

                                                  

指的是在函数内部,调用函数自身的操作;当外层函数体中,遇到自身函数调用,继续进入内层函数执行,而自身函数的后半部分暂不执行,知道最内层函数执行完以后,在逐步向外执行;



function func($num){
     echo $num."<br/>";    if($num>0){
        func($num-1);   //func(--$num);   试一试又不一样的结果哟!   //func($num--);    }
    echo $num."<br/>";
 }func(10);

                                [include/require]
   1.两者的作用就是用于引入外部的PHP文件到当前文件中:include 'a.php';include ('a.php');
   2.两者的区别:(对于错误的处理不同)当引入文件错误时,include会产生警告,并不影响后续代码的执行,而require会产生错误,后续代码不再执行;
   3.一般当用于在文件最上方导入某些文件时,使用require导入,如果失败,则不执行文件;
     如果是在某些分支条件中,导入执行某些操作,一旦报错不影响执行结果。
   4.include_oncerequire_once表示:文件只能导入一次,如果多次调用函数,则后面的文件会判断文件是否导入,再决定是否导入新文件。
     (检测文件是否导入时只关心文件是否已经导入,并不关心使用何种方式导入的。)
   5.include/require可以导入各种类型的文件,相当于在当前文件copy了一份,但是copy过程中,PHP引擎会进行适当的编译,确保不会出错。
   6.include和require是函数也是指令!PHP对于很多常用函数,会提供执行的写法,eg:函数写法echo("111");指令写法echo "111";
  

 

위 내용은 PHP 함수 선언 및 사용법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.