【PHP】 関数の基礎

関数の基本構文
 
変数:ひとつの値や文字列などのデータを使いまわす
関数:もっと大きな範囲、処理をひとまとめにして使いまわす
 
定義・出力方法
function 関数名( 仮引数 ){
処理
}
 
関数名();
 
<?php
function outputName($last_name, $first_name){
echo “私の名前は” . $last_name . $first_name . “です。
”;
}
outputName(“北川”, ”景子”);
outputName(“アン”, ”ハサウェイ”);
?>
 
→ 私の名前は北川景子です。
私の名前はアンハサウェイです。 と出力
 
 
returnで値を返す
①returnを使わない場合
<?php
function sum($a, $b, $c){
echo $a + $b + $c ;
}
 
sum(100, 200, 300);  → 600と出力
sum(300, 400, 500);  → 1200と出力
 
②returnを使う場合
<?php
function sum($a, $b, $c){
return $a + $b + $c;
echo 'Hi';
}
echo sum(100, 200, 300) + sum(300, 400, 500);  → 1800と出力
※関数内でreturnを使うとそれ以降の処理は実行されない。
 よって上の例では、 Hi は出力されない。
 
 
無名関数
関数自体を値として使い、変数に代入することができる。
<?php
$sum = function ($a, $b, $c) {   // 関数名がないので無名関数と呼ぶ
return $a + $b + $c;
};
echo $sum(100, 200, 300);  → 600と出力
普通の関数は最後に ; は不要だが、値として代入する場合は ; が必要。
無名関数にすることで、関数を別の関数の引数に渡すことができる。
 
 
if ... else ... を短く書くことができる条件演算子
①if…else…を使う場合
<?php
function sum($a, $b, $c){
$total = $a + $b + $c;
if($total < 0){
return0;
} else {
return $total;
}
}
echo sum(1,3,5);  → 9と出力
echo sum(-1, -3, 2);  → -2と出力
 
②条件演算子を使う場合
return 条件 ? trueの時の返り値 : falseの時の返り値; 
<?php
function sum($a, $b, $c){
$total = $a + $b + $c;
return $total < 0 ? 0 : $total;  //この部分
}
echo sum(1,3,5);
echo sum(-1, -3, 2);