RのWeb制作

Webサービス制作のための技術情報を。データ分析(Python、機械学習コンペ他)や自作野球ゲームMeisyoのこと中心。

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

メールアドレスが公開されることはありません。

関連記事

Flask-Babelを使って、Pythonアプリで多言語対応を行う

Pythonで多言語対応してみたいなーと思っていました。 思っていましたが、実際になかなか使うタイミングがない・・・。 今回自作ゲームでユーザー数の増加がみられ、かつ海外からのアクセスも複数確認できた …

特訓の追加について

練習に特訓を追加しました。 特訓の実装目的は、 1. 選手発掘の迅速化 2. 特定の選手の育成 です。 meisyoはステータスが絶対的ではないので、(なんとなく)良い選手を発掘することが重要です。 …

Windows10(32bit)でのC言語およびC++のコンパイラ「MinGW」のインストールとテスト

32bitのWindows10環境でCとC++を開発するためのコンパイラ「MinGW」のインストールを行います。 私も初心者ですが、簡単にインストールできました! 日付:2018/09/09 OS:W …

no image

まとめ読み バージョン1.1.1のリリース

フリーソフト「まとめ読み」バージョン1.1.1のリリースを行いました。 まとめ読み ダウンロードページ 変更点 検索方法の変更 検索マッチングの先を、「タイトル&内容」「内容」の2つに変更しました。 …

[Meisyo]ビッグデータから学ぶ試合の基礎設計5

ここでは、「どのパラメータが打率等にどれくらい関係するのか」を理解することで強いチームを作る指針を記載しておきます。 [Meisyo]ビッグデータから学ぶ試合の基礎設計4の詳細版です。 今回は、右打と …