LoginSignup
0

More than 5 years have passed since last update.

PHP Manual 読書会(11回目)(クラスとオブジェクト2)

Posted at

PHPに慣れる為に週1ぐらいで更新していきます。PHP Manualを読んで実験して行きます。

前回:PHP Manual 読書会(10回目)(クラスとオブジェクト1)

クラスのオートローディング

最大の問題は、各スクリプトの先頭に、必要な読み込みを行う長いリストを 記述する必要があることです
PHP 5では、これはもう不要です。 spl_autoload_register() 関数で任意の数のオートローダーを登録できて、 クラスやインターフェイスが定義されていなくても自動的に読み込めるようになります。

spl_autoload_registerを使用することによって長たらしい読み込み記述を書かなくて済むようだ。

同一ディレクトリにHoge.phpを置く。

<?php

class Hoge
{
    public function say() {
        echo "hello hoge\n";
    }
}

set_include_pathで同一ディレクトリをinclude pathへ追加

<?php
set_include_path('./');
spl_autoload_register(function ($class_name) {
        include $class_name . '.php';
});

$obj  = new Hoge();

呼び出すことができる。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0