推奨チュートリアル:「php チュートリアル」
PHP 関数を使い始めるための基礎知識は何ですか?
#PHP 関数を始めるための基本的な知識は次のとおりです:
#1. 関数宣言function 函数名([参数1,参数2...])
{
函数体;
return 返回值;
}
function table(){
echo "<table align='center' border='1px' width='600px'>";
echo "<caption><h1>通过函数输出表格</h1></caption>";
for($out=0;$out<10;$out++){
$bgcolor = $out%2 == 0 ? "#FFFFFF" : "#DDDDDD";
echo "<tr bgcolor=".$bgcolor.">";
for($in=0;$in<10;$in++){
echo "<td>".$out*10+$in."</td>";
}
echo "</tr>";
}
echo "</table>";
}
function table($tableName,$rows,$cols){
echo "<table align='center' border='1px' width='600px'>";
echo "<caption><h1>$tableName</h1></caption>";
for($out=0;$out<$rows;$out++){
$bgcolor = $out%2 == 0 ? "#FFFFFF" : "#DDDDDD";
echo "<tr bgcolor=".$bgcolor.">";
for($in=0;$in<$cols;$in++){
echo "<td>".($out*$cols+$in)."</td>";
}
echo "</tr>";
}
echo "</table>";
}
table("此时你是我的唯一",5,3);
ローカル変数は内部変数とも呼ばれ、関数内で宣言された変数であり、その範囲は関数内に限定されます。関数。
ローカル変数は、格納方法の観点から動的格納タイプと静的格納タイプに分類できます。
関数内のローカル変数は、特に静的ストレージ カテゴリとして宣言されている場合、デフォルトでストレージ スペースを動的に割り当てます。 内部動的変数は関数呼び出し後に自動的に解放されます。関数の実行後に内部変数をメモリ内に残しておきたい場合は、静的変数を使用する必要があります。関数の実行後、静的変数は消えることはありませんが、関数へのすべての呼び出し間で共有されます。つまり、関数が再度実行されると、静的変数は前の結果から動作し続け、使用されるだけです。スクリプトの実行中、period 関数は最初に呼び出されたときに初期化されます。関数変数を静的として宣言するには、キーワード static が必要です。自分で理解してください!
function demo($one){ $two = $one; echo "在函数内部执行:$two+$one=".($two+$one)."<br/>"; } demo(200); echo "在函数外部执行:$two+$one=".($two+$one); //非法访问
グローバル変数は外部変数とも呼ばれ、関数の外で定義され、スコープ変数の定義から始まり、このプログラムテキストの最後で終わります。
関数内でグローバル変数を使用する場合は、global キーワードを使用してターゲット変数を定義し、この変数がグローバル変数であることを関数本体に伝える必要があります。
$one = 200; $two = 100; function demo(){ //在函数内部使用global关键字加载全局变量$one和$two global $one,$two; echo "运算结果:$two+$one=".($two+$one)."<br/>"; //300 echo "运算结果:".($GLOBAL['two']+$GLOBAL['one'])."<br/>"; }5. PHP 関数パラメータの種類
(1) 通常のパラメータを持つ関数
string example(string name,int age,double height)
(2) 疑似型パラメータを持つ関数:
PHP 疑似型:
混合数値コールバック 3 つのタイプ
(3) パラメータを参照する関数:
関数の仮パラメータに「&」で修飾されたパラメータがある場合、関数が呼び出されます。このパラメータには、値の代わりに変数を渡す必要があります。
void funName(array $&arg) (4) デフォルトパラメータを持つ関数:
デフォルト値は、定数式である必要があります。変数、クラスメンバー、または関数呼び出し。 PHP では、配列と特別な型 NULL をデフォルトのパラメーターとして使用できます。
mixed funName(string name[,string value[,int age]]) // 在参数列表中出现使用[]描述的参数 function person($name="张三",$age=20,$sex="男"){ echo "我的名字是:{$name},我的年龄是{$age},我的性别是{$sex}<br/>"; }
(5) 可変数のパラメーターを持つ関数:
func_get_args();//スクリプトに渡された関数のすべてのパラメーターを配列として返します
//パラメータの合計数を返します
//パラメータの特定の数を返しますパラメータ リスト 項目 (0...)(6)
コールバック関数: 関数パラメータは関数です
//パラメーター リストで疑似型コールバックを使用して変数関数を記述し、変数関数宣言を使用してコールバック関数を適用します。call_user_func_array を使用します。 ()
関数のカスタマイズ コールバック関数、クラス静的関数、およびオブジェクト メソッドのコールバック; <pre class="brush:php;toolbar:false">//变量函数不能用于语言结构,例如echo()
//print()、unset()、isset()、empty()
//include()、require()及类似的语句
function one($a,$b){
return $a+$b;
}
function two($a,$b){
return $a+$b+$b*$b;
}
function three($a,$b){
rerurn $a*$a*$a+$b*$b*$b;
}
$result = "one";
//$result = "two";
//$result = "three";
echo $result(1,2);</pre><pre class="brush:php;toolbar:false">function filter($fun){
$fun();
}
function test(){
echo "haha!";
}
function test2(){
echo "houhou!";
}
filter("test");
filter("test2");//haha!houhou!</pre><pre class="brush:php;toolbar:false">function fun($msg1,$msg2){
echo &#39;$msg1=&#39;.$msg1;
echo &#39;<br/>&#39;;
echo &#39;$msg2=&#39;.$msg2;
}
call_user_func_array(&#39;fun&#39;,array(&#39;Lamp&#39;,&#39;兄弟连&#39;));</pre><pre class="brush:php;toolbar:false">//类静态调用和对象的方法调用
class Demo{
static function fun($msg1,$msg2){
echo &#39;$msg1=&#39;.$msg1;
echo &#39;<br/>&#39;;
echo &#39;$msg2=&#39;.$msg2;
}
}
class Test{
function fun($msg1,$msg2){
echo &#39;$msg1=&#39;.$msg1;
echo &#39;<br/>&#39;;
echo &#39;$msg2=&#39;.$msg2;
}
}
//类静态调用
call_user_func_array(array(&#39;Demo&#39;,&#39;fun&#39;),array(&#39;Lamp&#39;,&#39;兄弟连&#39;));
//对象的方法调用
call_user_func_array(array(new Test(),&#39;fun&#39;),array(&#39;Lamp&#39;,&#39;兄弟连&#39;));</pre>
("関数名文字列"); //コールバック グローバル関数
("クラス名 string", "クラス内の静的メソッド名 string"));//クラス内の静的メンバー メソッドをコールバックします #callback(array
再帰関数: 関数が自身を呼び出します
6 . Self を使用する 関数ライブラリの定義
関数ライブラリは関数を定義するための PHP 構文ではなく、プログラミング時の設計パターンです。関数は構造化プログラミングのモジュールであり、コードの再利用を実現するための最も重要なコアです。カスタマイズされた関数を同じプロジェクト内の複数のファイルで使用できるようにコードをより適切に編成するために、複数のカスタマイズされた関数は通常、同じファイルまたは複数のファイルにまとめられます。これらのファイルは関数定義を収集して作成された PHP 関数ライブラリです。これらのファイルに定義されている関数を PHP スクリプトで使用する場合は、include、require、include_once、require_once のいずれかの関数を使用して、関数ライブラリ ファイルをスクリプト プログラムにロードする必要があります。および require ステートメントは、指定されたファイルを include して実行する両方です。違いは、include ステートメントでは、ファイルを実行するたびにファイルを読み取って評価する必要があるのに対し、require ステートメントでは、ファイルは
1 回だけ処理されることです (実際、ファイルの内容が require ステートメントを置き換えます)。これは、コードが複数回実行される可能性がある場合は、require を使用する方が効率的であることを意味します。さらに、コードが実行されるたびに異なるファイルを読み取る場合、または一連の ファイルを反復処理するループがある場合は、include ステートメントを使用します。require は require("MyRequireFile.php"); のように使用されます。この関数は通常、PHP プログラムの先頭に配置され、PHP プログラムが実行される前に、まず require で指定されたファイルを読み込み、PHP プログラムの Web ページの一部にします。このようにして、よく使われる機能を Web ページに導入することもできます。
include include("MyIncludeFile.php"); などのメソッドを使用します。この機能は通常、フロー制御の処理部分に配置されます。 PHP プログラムの Web ページは、インクルード ファイルを読み取るときにのみ読み取ります。これにより、プログラムの実行処理を簡略化することができる。
両者の目的は全く同じであり、必ずしもどちらを前に置き、どちらを真ん中に置く必要はありません。それらの最も基本的な違いは、エラーの処理方法です。
require ファイルにエラーがある場合、プログラムは実行を中断し、致命的なエラーを表示します。
include ファイルにエラーがある場合、プログラムは終了せずに続行します。実行すると、警告エラーが表示されます。
おすすめ関連記事:「php グラフィックチュートリアル」
以上がPHP 関数を使い始めるための基本的な知識は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。