PHPユーザークラスの呼び出し方と便利なコンストラクタの紹介

こんばんは。

早坂@magicalです。

今回は以前紹介した「ユーザー定義クラスの書き方+使い方」で紹介し忘れたクラスの呼び出し方とコンストラクタについてです。

ユーザークラスを作ったのはいいが呼び出し方・・・・な状態になってしまい申し訳ありません。

クラスの呼び方はまずは「new」を使ってクラス定義(オブジェクトの定義)を行い、その後使いたい関数をコールします。

ユーザー定義クラスの書き方+使い方を元に紹介していきますと以下の通りです。

class StrClass{
var $printStr = null ;
function setStr( $setMoji ){
$this->printStr =&$setMoji ;
}

function printMoji( $moji ){
$this->setStr( $moji ) ;
echo $this->printStr ;
}
}
$strClass =& new strClass() ;
$strClass->printMoji('あいうえおっかさあああああああん!') ;

いやぁ・・・コピペして整形してから気づきましたが、微妙に使い方載ってますね(笑)

$strClass =& new strClass() ;

こいつがクラスを使えるように定義(オブジェクトの定義)を行っているのです。

で、その下の

$strClass->printMoji('あいうえおっかさあああああああん!') ;

が定義したクラスの中に記述されている関数をコール(呼び出)しています。

これがクラスの基本的な使い方です。
続きまして、コンストラクタの概念と使い方です。

コンストラクタの考え方はC言語からきているらしいです。

自分も詳しくは分かりませんが、Cを元にしたらしいです。

では、書き方につきましてです。

コンストラクタは基本的に「クラス名==コンストラクタ名」でなくてはなりません(PHP3〜4)。

PHP5からはコンストラクタを定義するときは「__construct」と記述することで自動読み込みが行われます。

実際の記述例は以下の通りです。

// PHP3〜4
class strClass{
function strClass(){
// ここになにやらやりたいことをば
}
}
// PHP5〜
class strClass{
function __construct(){
// ここになにやらやりたいことをば。
}
}

こんな感じです。

だいたいはセッションを持たせる時のベースIDやら、XMLをパース刷る際に使うURLなどを格納するように記述したりします。

コンストラクタを使うことでオブジェクトの継承を簡単に行うことができ、オブジェクト管理が楽になります。

コンストラクタの基本概念については自分もまだ理解しきれていないので、勉強して出直してきます。

では本日はこれまでにしておきます。