PHPの無名関数と即時関数の書き方

PHPの関数には無名関数と即時関数というものがあります。

僕はあまり使いません(笑)

用途があまり分かってないだけだと思います。

でも、ほかのもっと優秀な人のプログラムを見るとたまに使われているので知っていて損は無いと思います。

無名関数

匿名関数や無名関数と呼ばれる関数の書き方です。

漢字が多くて分かりにくいですね!笑

クロージャやラムダ式関数とも言われます。

 

匿名関数は関数の定義に名前をつけず、処理を変数に格納します。

実行するときは、$myFunction() のように括弧をつけて実行します。

これを実行すると画面に「18歳です。こんにちは。」と表示されます。

 

use ($hello) は無くても大丈夫です。

親スコープにある変数を使いたい場合に使います。

即時関数

即時関数はこのように関数名も無しに書けます。

最後の行の 24 が引数に与える値になります。

これを実行すると画面に「24歳です。こんにちは。」と表示されます。

ただしこの方法は関数のメリットである使いまわすことが出来ません。

 

use ($hello) は無くても大丈夫です。

親スコープにある変数を使いたい場合に使います。

 

このように即時関数で実行した結果をreturnし、値を受け取ることも出来ます。

まとめ

PHPには通常の関数以外に無名関数と即時関数があります。

僕は必要だと思ったことが無くあまり使ったことがありません。

なので詳しいことは僕に聞かないでください(笑)

コロナの影響でみんな大変だから俺もなんかできること

僕は福井県に住んでいるのですが、戦時中に福井大空襲にあい、その直後に大震災にあってボロボロになった話をおばあちゃんに聞きました。

それでも復活することができ、不死鳥の町と言われるようになりました。

先人達には心から感謝し尊敬します。

リーマンショック、東日本大震災、コロナと数十年に一度と言われる被害が立て続けに起きていますが、僕たちは強いです。

今は苦しいかもしれませんがきっと復活できます。

僕は低学歴ですし小さな小さな粒でしかないですが、プログラミングに関しては必死に勉強し15年以上ごはんにありつけています。

プログラミングを勉強している人の役に立てるほどのスキルはあると思っています。

なので1人でもんもんと悩んでいる若手のエンジニア向けに質問を受け付けることにします。

自宅で待機されている間もパソコンとインターネットがあればプログラミングの勉強はできます。

  • PHP
  • SQL
  • HTML・CSS
  • jQuery

とは言ってもいきなり答えを聞いていたのではなかなか成長できないと思うのです。

なので質問の際には次のことをご連携ください。

  • 何をやりたいか
  • どんなことを調べたか、検索キーワードと参考にしたページのURL
  • 調べた結果どこが分からないか
  • できるなら試したコード

メッセージいはとりあえずTwitterにでもください。

質問はこちら

すぐに返事できないかもしれませんがご了承ください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA