ホームページ > バックエンド開発 > PHPチュートリアル > Benniao は php(5) 関数の宣言と使用法を学びます

Benniao は php(5) 関数の宣言と使用法を学びます

WBOY
リリース: 2016-06-13 12:03:18
オリジナル
690 人が閲覧しました

Benniao が学ぶ php (5) 関数の宣言と使い方

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 . &#39;<br>';	}	demo($a);	echo $a;	// 结果: 20, 10	// PHP的变量分不出 $a 是声明还是使用?>
ログイン後にコピー
2.2 知識ポイント: 関数でグローバル変数を使用する場合、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 ####?>
ログイン後にコピー

静的変数: 関数 (クラス) 内でのみ宣言でき、宣言できません。グローバルに宣言するには、static キーワードを使用して変数の前の を変更します。

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 混合とは、任意のタイプのデータを意味します渡すことができます
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 コールバック関数にはコールバックがあります。つまり、この関数を呼び出すときに関数 (関数名、関数名) を渡す必要があります。 string) 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 ) ?>
ログイン後にコピー


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート