目次
【 PHP学習 #9 】 「関数 = function = 機能」
関数と聞くと、数学的なものをイメージしてしまいます。
関数なので、何かの数のようなイメージもつきますが、関数は、数ではありません。
そこで、関数のイメージとして、英語のfunction=機能と覚える方が、よりわかりやすいと思います。
【 関数 = 機能 】
関数は、自動販売機に例えられます。
自動販売機に、
お金を入れる(入力 インプット)
商品が出てくる(出力 アウトプット)
この、
入力インプットを、引数と呼びます。
出力アウトプットを、戻り値と呼びます。
自動販売機では、入れたお金に対して、出力できる商品を判別したり、お釣りを計算したりします。
これを実行しているのが、関数の役割と言えます。
関数の種類
ユーザー定義関数
自由に作ることができる関数
組み込み関数
準備してある関数
▶︎ ユーザー定義関数
ユーザーが自由に設計できる関数です。
書き方
function 関数名(引数){
//処理
return // 戻り値
}
これが基本となりますが、
引数が複数あったり、
引数がなかったり、
戻り値がない場合などがあります。
引数なし・戻り値なし
<?php
//ユーザー定義関数
//引数なし
//戻り値なし
function test(){
//処理
echo 'テスト';
}
test();

testというfunctionを作ります。
test( ) の( )の中は、引数が入りますが、今回は引数なしなので、空白です。
test( )の機能は、’テスト’ をechoすることです。
この機能を実行したところで、
test();
と、書けば、’テスト’ をechoしてくれます。
引数あり・戻り値なし
<?php
//ユーザー定義関数
//引数あり
//戻り値なし
$comment = 'コメント';
function getComment($string){
echo $string;
}
getComment($comment);

$comment という変数を定義して、
getComment( )という関数を作る。
getComment( )は、引数$stringを持ちます。
getComment( )の機能は、$stringをechoすることです。
getComment(); の引数に変数$commentを入れると、
「コメント」がechoされます。
変数$commentの中身が変われば、関数$getCommentによって、echoされる内容も変わります。
しかし、関数自体は、変わりませんから、使いまわせることができるのです。
引数なし・戻り値あり
<?php
//ユーザー定義関数
//引数なし
//戻り値あり
function getNumberOfComment(){
//戻り値
return 5;
}
echo getNumberOfComment();

getNumberOfCommentという関数を作り、
5をretuen(戻り値)に設定する。
この時点で、getNumberOfCommentには戻り値の5が入ります。
getNumberOfCommentをechoすると、5表示されます。
引数2つ・戻り値あり
<?php
//ユーザー定義関数
//引数2つ
//戻り値あり
function sumPrice($int1, $int2){
$int3 = $int1 + $int2;
return $int3;
}
$total = sumPrice(2,5);
echo $total;

sumPrice という関数を作り、その引数に$int1, $int2を指定します。
sumPrice の機能は
$int3 という変数を用意して、引数の$int1, $int2を足します。
そして、足した結果が入った$int3をreturnします。
$totalという変数作り、関数sumPriceを呼び出して、引数を入れます。
sumPrice(2,5)と入れたので、
$int1=2
$int2=5
$int3 = 2 + 5
$int3 = 7
return $int3 は 7
sumPriceに7が戻り値として入る
$totalは7になり、
7がechoされる
というわけです。
【 まとめ 】
関数のについて学びました。
関数は処理の塊を作り、使いところで呼び出すという使い方です。
まさに、プログラミングといった感じですね!
仕組みを作る楽しさが満載です!