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秒で構築する - へびにっき