クラス/オブジェクト関数編 その3

Human Resocia Co.,Ltd.

2015-07-22 09:00

ヒューマンリソシア株式会社はコラム「クラス/オブジェクト関数編 その3」を公開しました。
###

前回の続きですので「autoloadが走らないように、事前に、クラスが存在するかがわかればいいのに…」なんて関数、
のお話から、になります。
まず、get_declared_classes() 関数というものがありまして…なにはともあれ、見ていきましょう。

class hoge {
}
var_dump( get_declared_classes() );

get_declared_classes() 関数は「定義済のクラスの名前を配列として返す」関数です。
hogeを定義したので、hogeも、多分最後のほうにいるんじゃないか、と思います。
ここから探し出せばよいのですが、そこまで面倒をしなくても、もうちょっとそのものずばりな関数が存在します。
それが、 class_exists() 関数です。

class hoge {
}
var_dump( class_exists(‘hoge’) );

解りやすくてよいですね。
さて、クラス名を指定するときは意識して置いた方が良いautoloadですが。

function __autoload($class_name) {
echo “__autoload called -> {$class_name}\n”;
}
var_dump( class_exists(‘test’) );

しっかりと、autoloadが動いてくれます。
抑止したい場合は、第二引数で指定可能ですので。

function __autoload($class_name) {
echo “__autoload called -> {$class_name}\n”;
}
var_dump( class_exists(‘test’, false) );

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

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

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

ZDNET Japan クイックポール

注目している大規模言語モデル(LLM)を教えてください

NEWSLETTERS

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

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

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