PHP-関数
PHP関数は、他のプログラミング言語に似ています。関数は、パラメーターの形式でもう1つの入力を受け取り、何らかの処理を行って値を返すコードの一部です。
あなたはすでに次のような多くの機能を見てきました fopen() そして fread() など。これらは組み込み関数ですが、PHPには独自の関数を作成するオプションもあります。
あなたに明確でなければならない2つの部分があります-
- PHP関数の作成
- PHP関数の呼び出し
実際、さまざまな領域用に作成された組み込みライブラリ関数はすでに1000を超えており、要件に応じて呼び出す必要があるため、独自のPHP関数を作成する必要はほとんどありません。
便利な関数の完全なセットについては、PHP関数リファレンスを参照してください。
PHP関数の作成
独自のPHP関数を作成するのは非常に簡単です。呼び出すときにブラウザに簡単なメッセージを書き込むPHP関数を作成するとします。次の例では、writeMessage()という関数を作成し、作成直後に呼び出します。
関数を作成するとき、その名前はキーワードで始まる必要があることに注意してください function 次の例に示すように、すべてのPHPコードを{および}中括弧で囲む必要があります-
<html>
<head>
<title>Writing PHP Function</title>
</head>
<body>
<?php
/* Defining a PHP Function */
function writeMessage() {
echo "You are really a nice person, Have a nice time!";
}
/* Calling a PHP Function */
writeMessage();
?>
</body>
</html>
次の結果が表示されます-
You are really a nice person, Have a nice time!
パラメータ付きのPHP関数
PHPには、関数内でパラメーターを渡すオプションがあります。必要な数のパラメーターを渡すことができます。これらのパラメーターは、関数内の変数のように機能します。次の例では、2つの整数パラメーターを取り、それらを加算してから出力します。
<html>
<head>
<title>Writing PHP Function with Parameters</title>
</head>
<body>
<?php
function addFunction($num1, $num2) {
$sum = $num1 + $num2;
echo "Sum of the two numbers is : $sum";
}
addFunction(10, 20);
?>
</body>
</html>
次の結果が表示されます-
Sum of the two numbers is : 30
参照による引数の受け渡し
参照によって関数に引数を渡すことができます。これは、変数への参照が、変数の値のコピーではなく、関数によって操作されることを意味します。
このような場合に引数に変更を加えると、元の変数の値が変更されます。関数呼び出しまたは関数定義のいずれかで変数名にアンパサンドを追加することにより、参照によって引数を渡すことができます。
次の例は、両方のケースを示しています。
<html>
<head>
<title>Passing Argument by Reference</title>
</head>
<body>
<?php
function addFive($num) {
$num += 5;
}
function addSix(&$num) {
$num += 6;
}
$orignum = 10;
addFive( $orignum );
echo "Original Value is $orignum<br />";
addSix( $orignum );
echo "Original Value is $orignum<br />";
?>
</body>
</html>
次の結果が表示されます-
Original Value is 10
Original Value is 16
PHP関数の戻り値
関数は、を使用して値を返すことができます return値またはオブジェクトと組み合わせたステートメント。returnは関数の実行を停止し、値を呼び出し元のコードに送り返します。
を使用して関数から複数の値を返すことができます return array(1,2,3,4)。
次の例では、2つの整数パラメーターを取得してそれらを加算し、それらの合計を呼び出し元のプログラムに返します。ご了承くださいreturn キーワードは、関数から値を返すために使用されます。
<html>
<head>
<title>Writing PHP Function which returns value</title>
</head>
<body>
<?php
function addFunction($num1, $num2) {
$sum = $num1 + $num2;
return $sum;
}
$return_value = addFunction(10, 20);
echo "Returned value from the function : $return_value";
?>
</body>
</html>
次の結果が表示されます-
Returned value from the function : 30
関数パラメータのデフォルト値の設定
関数の呼び出し元がパラメーターを渡さない場合は、パラメーターをデフォルト値に設定できます。
次の関数は、使用によってこの関数に値が渡されない場合にNULLを出力します。
<html>
<head>
<title>Writing PHP Function which returns value</title>
</head>
<body>
<?php
function printMe($param = NULL) {
print $param;
}
printMe("This is test");
printMe();
?>
</body>
</html>
これにより、次の結果が生成されます-
This is test
動的関数呼び出し
関数名を文字列として変数に割り当ててから、これらの変数を関数名自体とまったく同じように扱うことができます。次の例は、この動作を示しています。
<html>
<head>
<title>Dynamic Function Calls</title>
</head>
<body>
<?php
function sayHello() {
echo "Hello<br />";
}
$function_holder = "sayHello";
$function_holder();
?>
</body>
</html>
次の結果が表示されます-
Hello