RのWeb制作

Webサービス制作のための技術情報を。

Web制作

PHPのコーディング規則、PSRを学ぶ(4)

投稿日:2013年11月12日 更新日:

PHPのコーディング規則、PSRを学ぶ(3)の続きです。
今回は実際にクラス名定義を自宅サーバーで試してみます。

1.「SplClassLoader.php」を手に入れる

「ダウンロード」または「直接入力」の方法があります。

・ダウンロードでの方法
http://gist.github.com/221634にアクセスして「Download Gist」をクリック。
ダウンロード
ダウンロードファイルは「.tar.gz」形式なので、「7Zip」などで解凍します。
「SplClassLoader.php」を「C:\xampp\htdocs\phptest」フォルダにコピー&ペーストします。
文字コードは「UTF-8(BOMなし)」、改行コードは「LF」で保存します。
(文字コード・改行コードの設定方法がわからない方はこちらの記事(詳細は5章)で解説しています)

・直接入力での方法
「C:\xampp\htdocs\phptest」フォルダに「SplClassLoader.php」ファイルを新規作成。
そのファイルをテキストエディタで開いておきます。

http://gist.github.com/221634にアクセスして「<>」(View Raw)をクリック。
直接入力
「SplClassLoader.php」のコードのみが表示されるので、「Ctrlボタン+Aキー」または「右クリック > 全てを選択」で全てを選択し、コピーします。

テキストエディタで開いておいた「SplClassLoader.php」に貼り付け(ペースト)します。
文字コードは「UTF-8(BOMなし)」、改行コードは「LF」で保存します。
(文字コード・改行コードの設定方法がわからない方はこちらの記事(詳細は5章)で解説しています)

2.ローカルサーバーにあるファイルを編集

「C:\xampp\htdocs\phptest」フォルダに「test.php」ファイルを新規作成。
そのファイルに以下のコードを記述します。

&lt;?php
require_once 'SplClassLoader.php';

$classloaderTest = new SplClassLoader('Test', __DIR__);
$classloaderTest-&gt;register();

$obj = new Test\Call();
echo $obj-&gt;SayHello();

この「test.php」では、「Test」ベンダーの呼び出しと「Test\Clas」クラスの「SayHello」関数を呼び出します。
文字コードは「UTF-8(BOMなし)」、改行コードは「LF」で保存します。

「C:\xampp\htdocs\phptest」フォルダに「Test」フォルダを新規作成。
「C:\xampp\htdocs\phptest\Test」フォルダに移動して、「Call.php」を新規作成。
そのファイルに以下のコードを記述します。

&lt;?php
namespace Test;

class Call
{
    public function SayHello()
    {
        return 'Hello';
    }
}

この「Call.php」では、「Test」ベンダー中で「Call」クラスを定義し、「SayHello」関数をpublic(外でも呼び出せる)に設定します。
文字コードは「UTF-8(BOMなし)」、改行コードは「LF」で保存します。

「SayHello」関数が正常に呼び出されれば「Hello」と表示されます。

3.テストしてみる

XAMPPからApache(サーバー)を開始します。
(紹介しているPHP記述法はPHP5.3以上でないと動かないようです。PHP5.3未満の方は自宅サーバーの作り方を参考にしてください)
「http://localhost/phptest/test.php」にアクセスします。

「Hello」と表示されれば完了です。
表示されない場合はもう1度見直してください。

4.関数を追加してみる

「C:\xampp\htdocs\phptest\test.php」に以下のコードを追加します。

echo $obj-&gt;SayGoodBye(); // GoodByeを追加

「C:\xampp\htdocs\phptest\Test\Call.php」の「Call」クラス内に以下の関数を追加します

    public function SayGoodBye()
    {
        return '?GoodBye';
    }

「http://localhost/phptest/test.php」にアクセスします。

「Hello?GoodBye」と表示されます。

役割としては、赤が「SayHello」青が「SayGoodBye」関数に分割されています。
Hello?GoodBye

いろいろと試してみてください。
変数とか定数はどうなの?という方は40分濃縮 PHP classの教室で解説されています。
今回は以上で終了します。

次の記事

次は、「PSRの規則をまとめてみる」を行います。
PHPのコーディング規則、PSRを学ぶ(5)

参考

40分濃縮 PHP classの教室

-Web制作

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

[Meisyo]左投右打が出過ぎで気持ち悪い件の分析

本日フリーゲーム夢現に初コメントが付いたのでワクワクして見ました。 #—————————&# …

[Meisyo] 最近のアップデートの総括

最近のアップデートで失敗したかなと思ったもの 特訓 結構多くの人が使うと思って追加した。 けれども、蓋を開けてみると日で1~2割くらいの方しか使ってもらえていない。 選択肢がないより良いが、選手をある …

[Meisyo]大型アップデート予定のお知らせ

名将と呼ばれた者達よりお知らせです。 下記アップデートを予定しています。 1・サーバーの移転(高速化) 今まで練習試合等で非常に時間がかかっていた問題が解消されます。 2・チーム名等の仕様変更 チーム …

Google Driveを使ってXAMPP+CakePHPのドキュメントルートを共有する in Windows

どこでも同じように作業がしたい。 デスクトップでも、ノートでも。 無論、サーバー(XAMPP)も同じように動かしたいな ・・・ということで、Google Driveを使って環境を構築していきます。 今 …

[Meisyo]お試しトークルーム作成

Meisyoに、他監督にショートメッセージを送れる機能を付けようと思います。 メインは管理者への連絡手段の作成です。 個人間での交流もあればいいかなー程度の適当さで作っています。 必要機能: ・個人間 …