『PHP基礎講座③』では、関数について解説していきます。
関数とは
関数とは、特定の処理をすぐに使えるようにまとめておくものです。
この文章だけだとピンとこない人も多いと思うので、日常の1コマを具体例として挙げます。
作りたい関数:りんごとみかんを買ったときの料金を自動で計算する関数
▼条件
- りんごは200円
- みかんは50円
- りんごとみかんの個数を入力するだけで料金が計算される
<?php
//関数を定義
function calcPrice($apple , $orange) {
// りんごとみかんの料金が計算される
echo 200 * $apple + 50 * $orange;
}
// 関数を使う
calcPrice(3,5); // 出力結果:850
?>
こちらのコードは、イメージで言うなら「calcPriceという魔法を唱えたら、りんごとみかんの料金が計算される」みたいな感じです。
※急にfunction
や$apple
などが出てきて驚いた方もいるかもしれませんが、このあと関数の書き方は解説するので今は理解できなくてOKです。
ここで、「それくらいの計算なら関数として定義しなくてもいいんじゃないの?」と思うかもしれません。
たしかに、1回だけ計算するなら関数を使う必要はないですが、
何度も実行する処理は、関数として定義しておくことで使い回すことができ、コードを1から書く手間が大幅に減ります。
▼こういうイメージだとより分かりやすいかもしれないですね
りんごとみかんの料金を計算するために、毎回計算式を書いていると手間がかかりすぎる…。
→じゃあ、1度書いた計算式に名前をつけて保存してすぐに使えるようにしよう!
→それで生まれたのが『関数』
では、次は『関数の使い方』と『オリジナルの関数の作り方』を解説していきます。
関数の使い方
関数を使うときは以下のような構文を使います。
<?php 関数名(); ?>
実際の活用例を紹介すると、
以下のthe_title()
はWordPressサイトで使われる関数です。
<?php the_title(); ?>
この関数を使うことで以下の画像で示しているような『投稿記事のタイトル』を出力することができます。
また、関数によっては関数名のあとの()
内に値を入れて使うことでより詳細な指定ができます。
例えば、先ほどのthe_title()
にも以下のように()内に値を入れることができます。
<?php the_title("<h3>", "</h3>"); ?>
the_title()
の場合は、上記のように書くと記事のタイトルをh3タグで囲むことができます。
()
内にどのような値を入れれば良いかは、それぞれの関数によって決まっています。
そのため、関数を使うときはその関数がどういう使い方をするのかを調べながらコードを書くとスムーズに制作ができます。
では、関数の使い方を解説したので、
続いて、『オリジナルの関数の作り方』を紹介します。
オリジナルの関数の作り方
オリジナルの関数を作るときは以下のような構文を使います。
<?php
function 関数名() {
実行する処理
}
?>
実際に「体力が回復しました」という文字列が出力される『heal』という関数を作ってみると以下のようになります。
<?php
function heal() {
echo "体力が回復しました";
}
?>
また、関数名のあとの()
には以下のように変数を入れることができます。
<?php
function heal($name) {
echo $name."の体力が回復しました";
}
heal("勇者"); //出力結果:勇者の体力が回復しました
?>
上記のように()
内に入れる値によって、出力結果が変わります。
今回は()
内に「勇者」と入れているので、「勇者の体力が回復しました」と出力されます。
さらに、()
内に入れられる変数は1つだけでなく、以下のように複数入れることもできます。
<?php
function heal($name1 , $name2) {
echo $name1."と".$name2."の体力が回復しました";
}
heal("勇者","魔法使い"); //出力結果:勇者と魔法使いの体力が回復しました
?>
上記のコードでは、()
内に「勇者」と「魔法使い」を入れているので、「勇者と魔法使いの体力が回復しました」と出力されます。
このように関数と変数を上手くかけ合わせて使うことで、多様な機能が実装しやすくなります。
オリジナルの関数の作り方について解説しましたが、
実際、WordPress化では1からオリジナルの機能を実装することはほとんどなく、
基本的には『WordPress関数』と呼ばれる、
WordPressの内部にあらかじめ組み込まれている関数を使って制作を進めます。
一部、『functions.php』というファイルを用いて、機能の追加を行うことがありますが、
自分で1から考えて作ることはあまりなく、
大半は実装方法をGoogleなどで検索し、制作するサイトに合わせて部分的にコードをカスタマイズする形となります。
まとめ
関数の使い方
関数を使うときは以下のような構文を使います。
// 基本の構文
<?php 関数名(); ?>
// 具体例
<?php the_title(); ?>
// ()内に値を入れる場合
<?php the_title("<h3>", "</h3>"); ?>
オリジナルの関数の作り方
オリジナルの関数を作るときは以下のような構文を使います。
// 基本の構文
<?php
function 関数名() {
実行する処理
}
?>
// 具体例
<?php
function heal() {
echo "体力が回復しました";
}
?>
// ()内に値を入れる場合
<?php
function heal($name) {
echo $name."の体力が回復しました";
}
heal("勇者"); //出力結果:勇者の体力が回復しました
?>
// ()内に複数の値を入れる場合
<?php
function heal($name1 , $name2) {
echo $name1."と".$name2."の体力が回復しました";
}
heal("勇者","魔法使い"); //出力結果:勇者と魔法使いの体力が回復しました
?>