contentstaticメソッドはインスタンスに依存しない機能を持つ?PHPstaticインスタンスメソッドはじめにphpを勉強する際に「そもそもstaticってなによ?」となるパターンが多いので、ここで簡単に解説する場を設けます。そもそもstaticとは何か「クラスに張り付いている」変数やメソッドを示す修飾子です。クラス内の変数やメソッドは、個別のインスタンスを生成してそのインスタンス経由でアクセスすることができます。static修飾子のついた変数やメソッドは、インスタンスを生成しなくてもクラスから直接呼び出すことができます。今回はstatic変数とstaticメソッドのうち、staticメソッドについて取り扱います。どんな時に使うか?例えば、呼び出したい機能の単なる集まりとしてクラスを利用して、個別に値をずっと持たせておく必要のないとき(newしなくてよいとき)に使います。staticでない例から見てみましょう。$calc->diff(4,1)."\n";//3?>Calculatorは足し算や引き算などの計算機能をまとめたクラスです。変数は特になく計算をするメソッドだけを提供してくれます。下記のようにしても良いでしょう。Calculator::diff(4,1)."\n";?>Calculator::add(2,3)と、addメソッドをクラスから呼び出しているのがわかるかと思います。「計算機能を一箇所(クラス)にまとめて管理・使用したい」という用法であれば、インスタンス化しなくてもstaticメソッドで代替できます。まとめまとめると「インスタンスに依存しない機能」はstaticメソッドにすることができます。参考この記事は「CodeShip」内での実際の質疑応答や指導・アドバイスの一部を基に作成しています。行われる生徒と現役エンジニア講師の質疑応答の一部を抜粋または参考にして読者に共有しています。upLoginユーザーは見つかりませんでした。