2013年01月

phpをHerokuで動かす(Buildpackの利用方法)

HerokuとPHP

 Herokuでは以下の環境がサポートされています。
The Celadon Cedar Stack | Heroku Dev Center
 ここにPHPが無かったので動かないものだと勘違いしていたのですが、リストのうちFacebookとはFacebookアプリのことで、Ruby, Node.js, Python, and PHPがサポートされています。なのでPHPを動かす事ができるようです。

buildpackについて

 HerokuでPHPを動かす事ができる事はわかりましたが、標準環境のままでは不十分です。標準のままだとmbstringが使えません。そこでbuildpackを使用します。
 buildpackとは、アプリケーションがデプロイされた時に指定したコマンドを実行してくれるもので、herokuが公式に用意したものや、ユーザーが作成したものがあります。
 今回はphp向けに作成され、mbstringsが扱えるbuildpackを導入しましょう。最終的にこちらのbuildpackを使用しました。
iphoting/heroku-buildpack-php-tyler ・ GitHub

手順

buildpackを導入してアプリを作成。アプリ名を指定する場合はここで指定。
heroku create -s cedar -b git://github.com/iphoting/heroku-buildpack-php-tyler.git アプリ名
アプリに必要なファイルをgitに入れてから、ファイルをherokuへ
git push heroku master
以上でphpアプリをherokuで動かす事ができます。

heroku上のphpからredisを使う

 今回はキャッシュも使いたかったので、redisを入れました。Herokuにて無料で提供されているのは、Redis to goというAdd onですのでこれを使います。redisに接続するには環境変数からREDISTOGO_URLを取ってくれば可能です。
 詳細は以下のサンプルを参考にしました。
ryanbrainard/php-redis-heroku-demo ・ GitHub

今回作成したサイト

 今回作成したサンプルです。phpをherokuで動かす事に主眼を置いたので内容は適当です。公式のSDKphp SDKがMIT Licenseで提供されており、今回はこちらをほぼそのまま使いました。
http://ra-info.herokuapp.com/

 また、テンプレートエンジンであるsmartyも軽く試した所、普通に動かす事ができました。
http://amarank.herokuapp.com/

参考

概要
HerokuのBuildpackを利用してmbstringが有効なPHPサーバを立ててみた - hnwの日記
4時間耐久 PHP on Heroku
Heroku上に最新のPHP5.4 + nginx環境を30秒で構築する - へびにっき

buildpackの情報
Buildpacks | Heroku Dev Center
Heroku上に最新のPHP5.4 + nginx環境を30秒で構築する - へびにっき

iPhoneアプリでPopoverを実現するライブラリ(FPPopover)

 調べたのでメモです。
 iPadにはUIPopoverControllerがありますがiPhoneではこれに相当するものがありません。ボタンを表示するだけなら問題ありませんが、viewを表示したい場合もあるかもしれません。
 そこでiPhoneアプリでUIPopoverControllerを実現する方法を調べたところ、これを実現するライブラリがあったので紹介します。(自分では最終的に使いませんでした。自分の場合はそもそものボタン数を減らした上でUIAlertViewに全部任せました)

FPPopover
FPPopover, iPad-like popovers for iPhone
50pixels/FPPopover · GitHub

特徴
・矢印の向きは自動で配置される、矢印を非表示にする事もできる
・iPadでも動く
・カスタマイズ可能
・ライセンスはMIT License。


 なお、UIBarButtonを使うには注意が必要だそうです。
objective c - iPhone: Error when using the FPPopover class when using it with a UIBarButtonItem - Stack Overflow

このサイトについて
Webアプリケーション開発のことや、iPhone・Android向けアプリ開発の話題が中心です。
管理:えんたつ twitter: @tattyamm
mimage
一部のリンクにはアフィリエイトが含まれます。
カテゴリ別アーカイブ
RSS
プログラミング本
古い本含めてメモです
iPhoneプログラミングUIKit詳解リファレンス iPhoneプログラミングUIKit詳解リファレンス Android Layout Cookbook アプリの価値を高める開発テクニック パーフェクトPHP (PERFECT SERIES 3) JavaプログラミングBlack Book 2nd Edition (Black Bookシリーズ)
表記
当サイトではGoogle Analyticsを使用しております。詳細はこちらを御覧ください