モバイルアプリを Azure で作る - データを扱う Azure Storage を利 してデータを保存する 本稿では PHP と Windows Azure を使って 画像などのファイルを扱うアプリケーションを開発する方法を説明します Windows Azure Platform では データの

Similar documents
モバイルアプリを Azure で作る - 開発環境を整える コマンドでのパッケージと実 準備 テキストエディタとコマンドで開発する Windows Azure Platform 上で動かす Web アプリケーションの開発にあたっては Microsoft Visual Studio や Eclipse

Azure 活用シナリオ PHP ホームページを移行 1

1. アンケート集計サンプルについて ここでは Windows Azure と SQL Azure を使ってアンケートを実施し アンケート結果を Excel で集計するサンプルについて説明します アンケートは Windows Azure で運用し アンケート結果は SQL Azure に格納されます

Team Foundation Server 2018 を使用したバージョン管理 補足資料

実践! 色々なモバイルアプリを作る 背景が毎回変わる Flash 待ち受け を作る ケータイの Flash 待ち受け を作る 最近のモバイル市場ではスマートフォンが全盛ですが 国内では ガラケー ( ガラパゴスケータイ ) と呼ばれるフィーチャーフォン ( ケータイ ) も まだまだ根強い人気があり

ArcGIS for Server での Web マップの作成方法

目次 1. Azure Storage をインストールする Azure Storage のインストール Azure Storage のアンインストール Azure Storage を使う ストレージアカウントの登録... 7

発環境を準備しよう2 章開Eclipseをインストールしようそれでは Eclipseをセットアップしましょう Eclipseは Eclipse Foundationのサイトからダウンロードできます ダウンロードのページを開くと いく

農業・農村基盤図の大字小字コードXML作成 説明書

Microsoft Word - koutiku-win.doc

intra-mart Accel Platform — OData for SAP HANA セットアップガイド   初版  

( 目次 ) 1. はじめに 開発環境の準備 仮想ディレクトリーの作成 ASP.NET のWeb アプリケーション開発環境準備 データベースの作成 データベースの追加 テーブルの作成

Microsoft PowerPoint ï½žéł»å�’å–¥æœ�ㇷㇹㅃㅀ㇤ㅳㇹㅋㅼㅫ曉逃.ppt [äº™æ‘łã…¢ã…¼ã…›]

Windows 10 IoT Core MVA 2015 August Windows 10 IoT Core ハンズオントレーニング Building and running Github MS IoT Samples on Windows 10 IoT Core 5 章センサーデータをクラウドへ

自宅でJava言語の開発環境を作る方法

XML Consortium 2009/5/8 XML Consortium Enterprise2.0 アプリを支えるクラウド基盤としての Windows Azure XML コンソーシアム Web 2.0 部会 日立ソフト宮崎昭世 Microsoft MVP for Development Pl

V-CUBE One

無線LAN JRL-710/720シリーズ ファームウェアバージョンアップマニュアル 第2.1版

目次 初めに... 3 実習用 PC... 3 USB ケーブル... 4 Visual Studio 2015 のインストール... 4.NET Micro Framework SDK のインストール... 6 Azure SDK のインストール... 9 補足 NET Micro F

Microsoft PowerPoint - Tutorial_2_upd.ppt

Microsoft Word - tutorial3-dbreverse.docx

Android アプリを作るための環境設定 Android アプリを作るのに必要なものは Android SDK と Java 開発環境の Eclipse です 環境設定作業の概要はまず Android SDK と Eclipse をそれぞれインストールします その後 Eclipse を起動し An

PowerPoint プレゼンテーション

Microsoft Word - PHP_SQLServer2012

DragonDisk

AWS Deck Template

XOOPS on Internet Information Service のステップバイステップガイド 更新日 :2009 年 12 月 適用対象 :Windows Server 2008 R2,Windows XP Professional 概要 インターネットインフォメーションサービス (II

SHOP99 99 SHOP サイトにデータベースを構築 phpmyadminの設定 1 ー 監修 Yours YoursCompany Company 監修 Yours

< B C815B F898AFA90DD92E8837D836A B E786C73>

図 1.SDK でインストールするパッケージ選択ができたら [Install] ボタンをクリックしますダウンロードとインストールが始まります インストールが終わると [close] ボタンが表示されるので クリックしてとじて下さい Google USB Driver package, revisio

AutoCAD Mechanical 2009 Service Pack 2 Readme 高品質な製品を提供するため オートデスクは AutoCAD Mechanical 2009 Service Pack 2 をリリースしました この Service Pack は AutoCAD Mechani

地図 SD カードを取り外す 最初に ナビゲーション本体から地図 SD カードを取り外します 本操作は地図 SD カードを初めて ROAD EXPLORER Updater に登録するときや パソコンにダウンロードしたデータを地図 SD カードに保存するときに実行してください 1 ナビゲーション本体

Web GIS Template Uploader 利用ガイド

第 2 版

新規インストールガイド Microsoft Office Professional Plus 2016 本書は Download Station から Microsoft Office Professional Plus 2016( 以下 Office) をダウンロ ドし 新規インストールを行う手順

Eclipse 操作方法 (Servlet/JSP 入門補助テキスト)

UTF8対応日本語簡易マニュアル

ArtiosCADセットアップガイド

32 ビット版 64 ビット版 Microsoft Windows XP Professional Microsoft Windows XP Professional x64 * * SP2 および SP3 Edition SP2 Microsoft Windows XP Home SP2 お *

Microsoft Word - Mac版 Eclipseの導入と設定.docx

独立行政法人産業技術総合研究所 PMID-Extractor ユーザ利用マニュアル バイオメディシナル情報研究センター 2009/03/09 第 1.0 版

HARTING Node.js Environment for HAIIC MICA 日本語 HARTING Node.js Environment for HAIIC MICA HARTING IT Software Development Marienwerder Str. 3, E

Raspberry Pi で WEB カメラを使用 会津大学 RT ミドルウェア講習会 2017 The University of Aizu

REAL ESTATE PORTAL WEB SYSTEM. インストール手順 -. 圧縮ファイルの解凍 -2. 設定ファイルの編集 -3. ファイルのアップロード -4. データベースの初期化 インストール後の設定手順 2-. システム設置後の設定 2-2. 管理画 へロ

BACREX-R クライアント利用者用ドキュメント

Microsoft PowerPoint - Tutorial_6.ppt

WebOTXマニュアル

2 / 8 オンデマンドダウンロード機能 を使用するときに次の制約があります 1. インターネットに接続されていない ( オフライン ) 場合は OneDrive エリアのみにあるファイルを開くことはできない 2.OneDrive エリアからダウンロードが完了するまでいくらか待たされるし ( 特に大

PowerPoint プレゼンテーション

メール利用マニュアル (Web ブラウザ編 ) 1

改訂履歴 改訂日付 改訂内容 2014/11/01 初版発行 2017/01/16 Studuino web サイトリニューアルに伴う改訂 2017/04/14 Studuino web サイトリニューアルに伴うアクセス方法の説明変更 2018/01/22 Mac 版インストール手順変更に伴う改訂

CubePDF ユーザーズマニュアル

(8) [ 全般 ] タブをクリックします (9) [ インターネット一時ファイル ] の [ 設定 ] ボタンをクリックします (10) [ 保存しているページの新しいバージョンの確認 ] から [ ページを表示するごとに確認する ] をクリックします (11) [OK] ボタンをクリックしていき

インテル® Parallel Studio XE 2019 Composer Edition for Fortran Windows 日本語版 : インストール・ガイド

スライド 1

ランタイム版 Pro 版共通 症例登録システム 2018/12/11 Q & A 目次 1. 起動時のエラー... 2 Q11. " ファイル jsgoe_data3.fmp12 を開くことができません" と表示されます (Windows) 2 Q12. ショートカットから起動できません (Wind

[Unifinity]運用マニュアル

Microsoft Word - Android開発環境構築.doc

Corporate Document

改版履歴 版数 日付 内容 担当 V /0/27 初版発行 STS V..0 20/03/04 トラブルシューティング改訂 STS P-2

PowerPoint プレゼンテーション

Microsoft Word - Setup_Guide

storage-sdk-Java

CodeGear Developer Camp

intra-mart 販売管理パッケージ

home-portal2_mobile_quickguide_user_v1.0

FormPat 環境設定ガイド

1

WordPress on Internet Information Service のステップバイステップガイド 更新日 :2009 年 12 月 適用対象 :Windows Server 2008 R2,Windows XP Professional 概要 インターネットインフォメーションサービス

平成 30 年度 プログラミング研修講座 岩手県立総合教育センター

事前準備マニュアル

FormPat 環境設定ガイド

Procedure-for-Azure-v1.1

目次 目次 動作環境と注意事項 AOSBOX AI プラスの動作環境について アプリのアンインストール アンインストール 動作環境 注意事項 よくある質問 お問い合わ

CommonMP Ver1.5 インストール手順書 目 次 1. 概要 目的 必要動作環境 ハードウェア構成 ソフトウェア構成 CommonMP のインストール手順 利用フロー

試金石取扱説明書

Microsoft iSCSI Software Targetを使用したクラスタへの共有ディスク・リソースの提供

改版履歴 版数 日付 内容 担当 V /03/27 初版発行 STS V /01/27 動作条件のオペレーティングシステムに Windows 7 STS を追加 また 動作条件のブラウザに Internet Explorer 8 を追加 V /0

THiNQセットアップガイド

ゲームプログラミング講習 第0章 導入

PowerPoint プレゼンテーション

「MT-3_2-ja

Data-Add User Manual.book

試金石取扱説明書

スマートにプログラミング Android 入門編第 2 版 SDK4/2.3 対応 よくあるご質問 (FAQ) ここでは 読者の皆様から寄せられた質問の中で 比較的多く見受けられたトラブル事例とその解決策を集め掲載致しました お困りの際の解決のヒントとしてご利用下さい なお スマートにプログラミング

EPSON PM-D600 活用ガイド

更新用証明書インポートツール 操作マニュアル 2011 年 10 月 31 日 セコムトラストシステムズ株式会社 Copyright 2011 SECOM Trust Systems CO.,LTD. All rights reserved. P-1

. はじめに 動作環境の全ブラウザで 本書の設定を行ってください 本設定を行わない場合 システムが 正常に動作しない可能性がありますので 必ず設定をお願いいたします また 本書の中で 画 像に番号を付与している箇所以外の設定は お使いの環境のままでご使用ください 参考 : 動作環境の全ブラウザについ

SimLabプラグインは各機能を15回分評価版として試用できます

01_Bdy-Gbws07Guide-CS2.indd

2. 菩提樹の動作に必要な各種ソフトウェア フル パッケージに含まれるソフトウェアの入手先です サイトの情報は変更されている場合がありますので 記載内容は参考にとどめてください SQL Sever 2008R2 Express Edition のダウンロード

SonicDICOM Cloud Connector インストール手順書 SonicDICOM Cloud Connector とは 検査装置が撮影した画像を自動的にクラウドへアップロー ドするためのソフトウェアです 1 前準備 クラウド上に PACS を作成する SonicDICOM Cloud

付録

HP Device Manager4.7インストール・アップデート手順書

mylittleadmin for SQL Server 2005 mylittleadmin for SQL Server 2005 Installation Guide version 3.1 ( インストールガイド日本語版 ) 目次 概要... 2 インストール要件... 2 インストールと設

JDL Webストレージサービス はじめにお読みください

Web AppBuilder for ArcGIS (Developer Edition) インストールガイド

Eclipse マニュアル <作成目的> Eclipse のインストール方法などを紹介したページはいろいろありますが 専門用語がわからない初心者でもわか りやすく Eclipse のインストール方法 基本操作などをまとめたマニュアル作成を目的としています <目次> 1 Eclipse のインストール

Attain3 インストール説明書

スライド 1

Transcription:

モバイルアプリを Azure で作る - データを扱う Azure Storage を利 してデータを保存する 本稿では PHP と Windows Azure を使って 画像などのファイルを扱うアプリケーションを開発する方法を説明します Windows Azure Platform では データの保存先に Azure Storage サービスか SQL Azure を利 するのが 般的です SQL Azure は SQL を実 する RDBMS です オンプレミスの SQL Server と同じ方法でアクセスすることができるため 基本的には従来の書き方のまま接続先を SQL Azure に変更するだけでかまいません 方 Azure Blob(Azure Storage サービス ) は ファイルを扱うストレージサービスではあるものの 般的なファイルシステムのように利 できるわけではありません Azure Blob の操作は HTTP REST インタフェースを利 して います PHP から簡単に使えるようにこれを抽象化した Windows Azure SDK for PHP(http://phpazure.codeplex.com/) という API が 意されています この API 特有のメソッドで操作しなければいけないと思われがちですが カスタムストリームラッパーが 意されているため 少し変更するだけで fopen や fread fwrite file_get_contents file_put_contents などの従来のファイルシステム関数を利 することができます 本稿では Windows Azure SDK for PHP のストリームラッパーを利 して Azure Blob への読み書きをする方法を紹介します PHP の実 と開発環境について 本稿での PHP の実 と開発環境については 事前に準備がされているものとします 環境構築については Windows Azure で PHP を実 する各種資料を参考にしてください 本稿では以下の環境で動作を確認しています Windows 7 Ultimate Edition(64bit) Windows Azure SDK 1.4 Windows Azure SDK for PHP v3.0.0beta PHP 5.3.6 Azure Storage サービスの準備 本稿のプログラムを Windows Azure 上で実 するには Azure Storage の初期設定がされている必要があります Windows Azure ポータル (https://windows.azure.com/) で Storage Account を作成しておいてください 開発環境で実 するには Storage Emulator が起動されている必要があります [ スタート ] メニュー - [ すべてのプログラム ] - [Windows Azure SDK v1.4] - [Storage Emulator] を起動してください

Azure Storage へのコンテナの作成とサンプルファイルの配置 本稿のサンプルで利 するファイルを Azure Storage にコピーします 今回は 本番環境の Azure Storage と開発環境の Development Storage の両方に対応する Azure Storage Explorer を利 します Azure Storage Explorer は http://azurestorageexplorer.codeplex.com/ から入手してください 1. Azure Storage Explorer を起動し [Add Account] をクリックします 2. Add Storage Account ダイアログで Azure ストレージのアカウント名とキーを入 します 開発環境の場合は Developer Storage をチェックします 3. コンテナを作成します Container ツールボタンの New をクリックし 適当なコンテナ名を入 します (ex. sample) Accessibility は今回は Private を選択します 4. 作成したコンテナを選択し Blob ツールボタンの New をクリックします 5. New Blob ダイアログで以下を入 します Blob name: 任意のファイル名 (ex. samplefile.txt) Blob Type: Block Blob を選択 Initial text content: ファイルの内容となる適当なテキスト

6. 以上で Azure Blob にファイルが作成されました

Windows Azure SDK for PHP の配置 http://phpazure.codeplex.com/releases/ から最新版の Windows Azure SDK for PHP をダウンロードして解凍し library\microsoft フォルダをプロジェクトの任意の場所にコピーします WebRole のフォルダ構成例 + WebRole + bin\ + php\ + php-cgi.exe + php.ini : + lib\ + Microsoft\ ここにコピー : + index.php + web.config : Windows Azure Tools for Eclipse を使っている場合 デフォルトで作られている WindowsAzureSDKForPHP フォルダに SDK のファイルが存在します これを利 する場合 バージョンが古い可能性があるので注意してください Azure Blob にアクセスするためにストリームラッパーを登録 いよいよプログラムを書いていきます まず 必要な SDK を読み込みます // include_path を指定します Windows Azure Tools for Eclipse のデフォルトの場合は // 'lib' の代わりに 'WindowsAzureSDKForPHP' とします // php.ini で設定しても構いません set_include_path(ini_get('include_path'). PATH_SEPARATOR. './lib'); // SDK を読み込みます require_once 'Microsoft/WindowsAzure/Storage/Blob.php'; require_once 'Microsoft/WindowsAzure/RetryPolicy/NoRetry.php'; Azure ストレージアカウント情報を定義します 開発環境 (Development Fabric) の場合 Development Storage への接続情報を登録します $storageurl = Microsoft_WindowsAzure_Storage::URL_DEV_BLOB; $storageaccount = 'devstoreaccount1'; $storagekey = 'Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KB HBeksoGMGw==';

本番環境 (Windows Azure Fabric) の場合 Azure Storage への接続情報を登録します $storageurl = Microsoft_WindowsAzure_Storage::URL_CLOUD_BLOB, $storageaccount = 'YOURESTORAGEACCOUNT'; // YOURESTORAGEACCOUNT をアカウント名に置き換えます $storagekey = 'YOURSTORAGEACCOUNTKEY'; // YOURSTORAGEKEY をストレージキーに置き換えます Blob インスタンスの初期化し ストリームラッパーを登録します // Blob インスタンスを初期化します $cli = new Microsoft_WindowsAzure_Storage_Blob( $storageurl, $storageaccount, $storagekey, false, Microsoft_WindowsAzure_RetryPolicy_RetryPolicyAbstract::retryN(10, 250) ); // ストリームラッパーを登録します $cli->registerstreamwrapper(); テキストファイルの読み書き ここからは通常通りファイルシステム関数を利 します fopen などで指定するファイル名は azure://{ コンテナ名 }/{ ファイル名 } となります サンプルは sample.php です $file = 'azure://sample/samplefile.txt'; // 事前に作成済みのファイル $handle = fopen($file, 'r+'); // ファイルを読み書きモードでオープンします $content = fread($handle, filesize($file)); // ファイルの内容をすべて読み込みます echo '<pre>'. $content. '</pre>'; // 読み込んだファイルの内容を出 します fwrite($handle, "\n 書き込んでみます "); // ファイルに書き込みます fclose($handle); // ファイルをクローズします echo '<hr /><pre>'; readfile($file); // 変更後のファイル内容を出 します echo '</pre>'; 結果表 例 ) ブラウザで 字化けする場合は 字コードを調整してください Azure blob ストレージに保存した テキストファイルの内容です Azure blob ストレージに保存した テキストファイルの内容です 書き込んでみます

ファイルのアップロード ファイルをアップロードするには move_uploaded_file でファイルの移動先に azure://{ コンテナ名 }/{ ファイル名 } と指定します サンプルは sample2.php です echo '<form action="'. $_SERVER['PHP_SELF']. '" method="post" enctype="multipart/form-data">'. '<type="hidden" name="max_file_size" value="3000000" />'. '<input type="file" name="f" />'. '<input type="submit" name="s" />'. '</form>'; if (count($_files) > 0) { move_uploaded_file($_files['f']['tmp_name'], 'azure://sample/'. $_FILES['f']['name']); } Web ブラウザからファイルをアップロード後 Azure Storage Explorer などでファイルが作成されていることを確認してください 簡単な説明ではありましたが このように従来のファイルシステム関数で Azure Blob 上のファイルを参照 変更したり ファイルをアップロードすることができることがお分かりいただけたと思います とは言え fopen で存在しないファイルを指定すると通常であればファイルが作られるはずがエラーになってしまったり disk_free_space と disk_total_space については Warning が出てしまったりなど すべての機能が実装されているわけではありません このような制限もありますが Windows Azure SDK for PHP のストリームラッパーを利 すると 既存のオンプレミスから Windows Azure Platform へ移 する労 や 新しいノウハウを習得するための労 を最 限にすることができるので ぜひご活 ください