マジックメソッドを巡る旅 その4

Human Resocia Co.,Ltd.

2015-10-05 09:00

ヒューマンリソシア株式会社はコラム「マジックメソッドを巡る旅 その4」を公開しました。
###

マジックメソッドの長い旅ですが、今回は、比較的「限定的な状況」で使われる、
3つのマジックメソッドについて解説をしていきたいと思います。

まずは__invoke()のご紹介です。
早速ですが、サンプルコードから。

class hoge {
public function __invoke() {
echo “call invoke\n”;
}
}
//
$obj = new hoge();
$obj();

インスタンスに()を付けて関数のように呼ぶ時に、マジックメソッド__invoke()があると、__invoke()が
callされます。
はいぶっちゃけますと「無名関数」のあのノリです。
引数については、当然といえば当然なのですが、通常の関数やメソッドと同じように
「引数ありも、デフォルト引数も、戻り値も」ありありです。
簡単に、サンプルを書いておきましょう。

class hoge {
public function __invoke($s = ‘no name’) {
return ‘your name is ‘ . $s ;
}
}
//
$obj = new hoge();
echo $obj(), “\n”;
echo $obj(‘hogera mugera’), “\n”;

「どこで使うの?」と聞かれると幾分困るのですが(苦笑
「こんな機能がある」というのを知っていると「ひょんなところで役に立つ」のが上級の知識なので、
使い方について、記しておきます。

お次は__set_state()ですね。こちらはvar_exportという関数に寄り添っているものなのですが…まずは、
その前提であるvar_exportを見ていきましょう。

この続きは以下をご覧ください
(リンク »)
本プレスリリースは発表元企業よりご投稿いただいた情報を掲載しております。
お問い合わせにつきましては発表元企業までお願いいたします。

【企業の皆様へ】企業情報を掲載・登録するには?

御社の企業情報・プレスリリース・イベント情報・製品情報などを登録するには、企業情報センターサービスへのお申し込みをいただく必要がございます。詳しくは以下のページをご覧ください。

ホワイトペーパー

新着

ランキング

  1. ビジネスアプリケーション

    AI導入の成否を左右するアーキテクチャ設計とは

  2. セキュリティ

    サイバーリスクは経営の最重要課題へ。取締役会に求められるインシデント対応の実践ガイド

  3. ビジネスアプリケーション

    なぜAIは定着しないのか? 全社活用を阻む3つの壁を突破し、業務の中で自然に動く仕組みを作るには

  4. ビジネスアプリケーション

    AI 人材育成を単なる研修で終わらせない--事業を動かす AI スキル構築の 5 つのステップ

  5. 経営

    8 割超の組織が“インフラの限界”に直面──エージェント型 AI 時代の新たな基準とは

NEWSLETTERS

エンタープライズコンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]