なんとなくモダンっぽいPHP環境をつくって yii framework を導入するところまで
- この記事の内容は2013年8月頃にメモしたものです
- なんか未完成っぽいけどめんどいのでそのまま公開
環境
開発環境として利用していて、 既に古いPHPや諸々のライブラリは導入されている状態
PHPのインストール
phpenv
git clone https://github.com/CHH/phpenv.git cd phpenv/bin sh phpenv-install.sh
.zshrc に以下を追記
export PATH=$HOME/.phpenv/bin:$PATH eval "$(phpenv init -)"
設定を反映
source ~/.zshrc
phpenv コマンドが有効になる。
実行したら rbenv って表示されるけど気にしない、ことにする…
php-build
mkdir ~/.phpenv/plugins cd ~/.phpenv/plugins git clone https://github.com/CHH/php-build.git
phpenv でinstallコマンドが使えるか確認
phpenv install
成功していればPHPのバージョンがガーーッと出てくる
PHP 5.5
phpenv install 5.5.3
事前に依存パッケージを入れておく。 自分の環境には以下がなかった。
sudo yum install re2c libcurl-devel libmcrypt-devel libtity-devel
バージョンを確認
phpenv versions
globalのphpを切り替え
phpenv global 5.5.3
なんかうまく切り替わらない場合は
phpenv rehash
したり source ~/.zshrc すれば戻る
あとでdate()云々で怒られるのでphp.iniを編集
vim ~/.phpenv/versions/5.5.3/etc/php.ini
timezoneを設定しておいい
[Date] ; Defines the default timezone used by the date functions ; http://php.net/date.timezone date.timezone = Asia/Tokyo
Composerでyiiのインストール
アプリケーションを構築したいディレクトリに移動して
curl -s http://getcomposer.org/installer | php
カレントディレクトリに composer.phar ができる
試しに composer.json を作成する
{ "require": { "yiisoft/yii": "1.1.*" } }
次のコマンドを実行してインストール
php composer.phar install
カレントディレクトリに vendor というディレクトリが作成されて 中に諸々がインストールされている
必要要件を満しているか確認 ビルトインWebサーバを立ち上げて確認してみる
php -S localhost:8080
http://localhost:8080/vendor/yiisoft/yii/requirements/
「Yii Requirement Checker」が表示されて、 各項目の条件が一覧できるのでとりあえず確認
yiiについてもろもろ
- Core framework code style · yiisoft/yii Wiki
- コーディング規約
- インデントはタブ必須らしい
- なんとなくPython使いからするとテンションさがる
- Ardem/yii-coding-standard
- CodeSnifferも用意されているので Git commit hook とかに適用させれば幸せになるかもしれない
- yii-webserver つかえる
- yii-standard-coding 便利
- ただジェネレートしたコードがERRORになるし
- giiの中のコードもエラーになる
- Gitで扱うときのyiiの雛形作成にはvcsオプションが便利
- こんな感じ:
yii webapp foo git
- 適切な位置にgitignoreとかを配置してくれる
- こんな感じ:
参考
- モダンなPHP開発環境を構築する – phpenv + php-build で 複数のPHPバージョンを管理する | Creator Life
- php-buildで複数バージョンのPHP-FPMを用意する - hnwの日記
- phpenv + php-build + composer で開発環境作ってみた | 69log
- PHPの外部ライブラリの管理にComposerを使う | Ryuzee.com
- Creating Yii applications with composer | Wiki | Yii PHP Framework
- Ubuntu に phpenv を入れて複数バージョンのPHP管理しようとした - Qiita
- Homebrew で Apache, PHP, MySQL, Composer をインストールして Yii Framework を動かすところまで - Qiita
ありがたやありがたや