ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

prado + php5コミュのサンプルプログラム:HelloWorldを解析してみる!

  • mixiチェック
  • このエントリーをはてなブックマークに追加
ディレクトリ構成:
+ helloworld.php
+ helloworld/
 + apprication.spec
 + HomePage.php
 + Homepage.tpl


1.helloworld.phpの解析

<?php
require_once(dirname(__FILE__).'/../framework/prado.php');
pradoGetApplication('helloworld/application.spec')->run();
?>

PRADOを使用する場合は、大抵上記のような記述だけになります。
1行目は、PRADOを読み込んでます。
2行目は、ユーザが作成したapplication.specをもとに起動します。
ですので、他のサンプルを見ても違ってるところは、ここだけになります。

2.apprication.specの解析

<?xml version="1.0" encoding="UTF-8"?>
<application ID="helloworld">
 <request default="HomePage" />
 <vsmanager encrypt="true" />
 <alias name="Pages" path="." />
 <using namespace="System.Web.UI.WebControls" />
 <using namespace="Pages" />
</application>

XMLで記述されています。エンコードは、UTF−8にしてください。

2行目 <application ID="helloworld">
必須です。ID番号は自由に設定できます。
できれば、1.で作成したファイル名と同じにしておくなど、各自でルールを決めておくといいでしょう。

3行目 <request default="HomePage" />
初期画面を設定します。指定された名前をもとにファイルを読み込みます。
今回の場合、HomePageが指定されていますので、HomePage.*が基本的に読み込まれます。

4行目 <vsmanager encrypt="true" />
これについては、今のところ気にしなくていいです。

5行目 <alias name="Pages" path="." />
3行目などで読み込むファイルの所在位置をエイリアスに指定しておきます。
このエイリアスは、このファイル以外にも、*.tplなどでも使う場合があります。

5行目 <using namespace="System.Web.UI.WebControls" />
6行目 <using namespace="Pages" />
どちらも、ネームスペースを定義しています。5行目は、PRADOのHTMLタグ関連がある位置になります。よって、いつも指定することになると思います。6行目は、先ほどエイリアス設定したユーザの設定ファイルがある位置になります。こちらも、毎回設定することになります。

このファイルの全ての設定を読み込み終わると、3行目に設定された画面を開こうとします。

つづく。。。

コメント(1)

3.Homepage.tplの解析

ソースの中から、HTMLタグを除くと、以下の3行になります。
<com:TForm>
 <com:TButton Text="Click me" OnClick="clickMe" />
</com:TForm>

<com:TForm> 〜 </com:TForm>
これは、HTMLの<FORM> 〜 </FORM>に相当します。
今回は、送信先を指定していないので、送信先は自分自身となります。

<com:TButton Text="Click me" OnClick="clickMe" />
こちらは、<input type=submit>に相当します。OnClickでは、Homepage.phpで作成した関数を呼ぶことができます。そして、指定した関数は、PHPで記述していますから、クライアントのブラウザで動作するのではなく、submit後にサーバ側で処理をします。

4.Homepage.tplの解析

<?php
class HomePage extends TPage
{
 function clickMe($sender,$param)
 {
  $sender->Text="Hello, world!";
 }
}
?>

今回は、テンプレートでTButtonのOnClickに設定された関数だけが記述されています。
今回の場合、$senderはTButtonの情報をさします。ですので、TButtonのTextの値を"Hello, world!"に変更しています。

以外に、簡単だったのではないでしょうか。

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

prado + php5 更新情報

prado + php5のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング