書籍転載
|
|
Page1
Page2
|
●PHP+Azureアプリケーションの基本
最初に作成するのは、まず定番のHello, Worldアプリケーションです。
図7-11:入力された名前に応じて、挨拶メッセージを表示 |
○[1]プロジェクトを新規に作成する
プロジェクトを新規に作成するには、メニューバーから[ファイル]−[新規]−[Windows Azure Web Project]を選択します*13。
*13 もしもメニューに該当する項目が表示されない場合は、[プロジェクト...]を選択して、[新規プロジェクト]ダイアログから[PHP]−[Windows Azure Web Project]を選択してください。 |
図7-12:[PHP Azure Project]ダイアログ |
[PHP Azure Project]ダイアログ(図7-12)が表示されますので、表7-2のように必要な情報を入力します。
項目 | 概要 | 設定値 |
プロジェクト名 | プロジェクトの名前 | AzurePhp |
内容 | プロジェクトの作成先 | ワークスペース内に新規プロジェクトを作成 |
Data Storage Options | どのストレージを利用するか | Windows Azure Data Storage & SQL Azure |
プロジェクト・レイアウト | プロジェクトの構造 | プロジェクトをソース・フォルダーとして使用 |
JavaScriptサポート | JavaScriptライブラリを使用するか | チェック |
表7-2 [PHP Azure Project]ダイアログの入力値 |
[Data Storage Options]は、プロジェクトの中でストレージサービス、SQL Azureにアクセスするかどうかを決定します。それぞれ該当する項目を有効にした場合、必要なライブラリ/拡張モジュールが有効化されます。これらの項目は、後からでも有効化できますが、邪魔になるものでもありませんので、プロジェクトの作成時に有効にしておくのが簡単でしょう。
○[2]プロジェクトの内容を確認する
[完了]ボタンをクリックすると、プロジェクトが作成されます。[関連付けられたパースペクティブを開きますか?]ダイアログが表示されるので[はい]ボタンをクリックしてください*15。
*15 パースペクティブとは、Eclipseにおける画面レイアウト(表示するウィンドウやその表示位置)の定義セットのことです。Eclipseでは、プロジェクトにパースペクティブを関連付けることで、作業内容に応じて画面構成を切り替えることができます。 |
図7-14:PHP Azure Projectの初期状態 |
PHPエクスプローラを確認すると、クラウドサービスプロジェクトとしてAzurePhpが、そして、WebロールとしてAzurePhp_WebRoleが作成されていることが確認できます。
クラウドサービスプロジェクトの配下には、Visual Studioの時と同じく、サービス定義ファイル、サービス設定ファイルが配置されています。これらの構成ファイルは直接に編集することもできますが、PHPエクスプローラからクラウドサービスプロジェクトを右クリックし、表示されたコンテキストメニューから[プロパティ]を選択することで、プロパティシートから編集することもできます。たとえば、以下は[<プロジェクト名>のプロパティ]ダイアログから[Windows Azure]の[Service Definition]を選択した例です。
図7-15:[<プロジェクト名>のプロパティ]ダイアログ([Service Definition]メニュー) |
Visual Studioのプロパティシートとはやや異なりますが、項目の意味を理解していれば、おおよそ直感的に設定を編集することができるでしょう*16。
ロールプロジェクトの配下に含まれているのはほとんどがサンプルファイルですが、Microsoftフォルダ配下に含まれているのはストレージサービスにアクセスするためのライブラリです*17。構成ファイルであるweb.config共々、削除しないように気を付けてください。
*16 ただし、enableNativeCodeExecutionは無効にしないでください。これはネイティブコードを実行するための設定で、Azure上でPHPを動作する場合は必ず有効にしておかなければなりません(デフォルトは有効)。 |
*17 ストレージライブラリの詳細は、第3章、巻末資料 A(※本転載では割愛)を参照してください。 |
○[3]新規のスクリプトを作成する
新規のスクリプトを作成するには、PHPエクスプローラから[AzurePhp_WebRole]を選択した状態で、メニューバーから[ファイル]−[新規]−[PHPファイル]を選択します。
図7-16:[新規PHPファイル]ダイアログ |
[新規PHPファイル]ダイアログが開きますので、適当なファイル名を入力した上で、[完了]ボタンをクリックします。ここでは、MyLib.php、Hello.phpを作成し、リスト7-1、7-2の要領でコードを記述してください*18。
*18 MyLib.phpは、アプリケーション共通で利用していくライブラリです。以降、このファイルに対しては、適宜、必要な関数を追記していきます。 |
|
|
リスト7-1 MyLib.php |
|
|
リスト7-2 Hello.php |
リスト7-1、7-2の内容は、特にAzure固有の内容は含んでいませんので、解説は割愛します。PHPそのものについてきちんと学習したい方は、拙著「独習PHP 第2版」(翔泳社)などを参照してください。
○[4]開発ファブリックでデバッグ実行する
それではさっそく、アプリケーションを開発ファブリックで動作してみましょう。開発ファブリックを起動するには、PHPエクスプローラからロールプロジェクトを右クリックし、表示されたコンテキストメニューから[Windows Azure]−[Run in Development Fabric]を選択してください*19。開発ファブリックとブラウザが起動し、図7-17のようなトップページが表示されます。
*19 自動でファイルの保存は行われませんので、編集中のスクリプトは実行前に保存するのを忘れないようにしてください。 |
図7-17:PHP Azureプロジェクトのトップページ |
開発ファブリックの動作を確認するには、P.28(※本転載では割愛。参考:「TIPS:Windows Azureアプリケーションを開発するには?(環境設定)」)で解説したのと同じく、タスクトレイから(開発ファブリック)を右クリックし、表示されたコンテキストメニューから[Show Development Fabric UI]を選択してください。これまでと同じく、開発ファブリックの管理コンソールを表示させることができます。
○[5]クラウド環境にプロジェクトを発行する
続いて、クラウド環境にプロジェクトを発行します。プロジェクトを発行するには、クラウドサービスプロジェクトを右クリックし、表示されたコンテキストメニューから[Windows Azure]−[Publish Application to Windows Azure Portal]を選択してください。
ポータルサイトが開き、同時に配置のためのパッケージファイルとサービス設定ファイルが作成されますので、P.31(※本転載では割愛。参考:「TIPS:Windows AzureアプリケーションをVisual Studioからデプロイするには?」)と同じ要領でポータルサイトにアップロードすることができます。
図7-18:作成されたパッケージファイル |
【Note】php.iniを編集する | |
拡張モジュールを追加するなどの目的で、php.iniを編集したいということはよくあるはずです。その場合には「<プロジェクトルート*20>\ServiceDefinition.csx\roles\WebRole\approot\php」配下からphp.iniを編集することができます。 ただし、ServiceDefinition.csxは開発ファブリックで一度デバッグ実行を行った後でないとできませんので、注意してください。
|
■
INDEX | ||
[書籍転載]Windows Azure 実践クラウド・プログラミング for C#/Visual Basic/PHP | ||
PHP+EclipseでWindows Azureアプリケーションを開発しよう | ||
1.WindowsAzure4eのインストール | ||
2.PHP+Azureアプリケーションの基本 | ||
「Windows Azure 実践クラウド・プログラミング for C#/Visual Basic/PHP」 |
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|