NO NAME

ArchLinux / Vim / Laravel / etc...

PhalconPHP Install on ArchLinux

PhalconPHP

自分の中でLaravelと同様に勉強したいのがPhalconPHP。 自分が勉強したいPHPフレームワークの一つ。 このPhalconPHPはライブラリがC言語で書かれていて、かなり高速なWebページを開発することが可能になる。 数あるPHPフレームワークの中でダントツで速いのがPhalconPHP。 またファイルの構成においてもかなりの自由度があるので自分でゴリゴリ書いていきたい人におすすめできるフレームワーク。 ただ、C言語で書かれた部分に関してはなかなかいじれないのでデメリットとなる。

そして中二病をこじらせるようなネーミングが魅力的。 ファイルの拡張子も.volt、ボルトとかかっこよい!!!!

PhalconPHPのインストール

MacOSやWindowsOSでのインストールは環境変数の設定が必要になるので若干面倒臭い。 ArchLinuxにおいてはAURパッケージに出ているのでAURをインストールするだけで終わる。

$ yaourt -S phalcon-devtools php-phalcon

動作確認

$ phalcon
$ phalcon create-project app --enable-webtools

devtoolsはPhalconPHPを視覚的に開発するのに役立つツール。 入れておくのをお勧めする。

もし、プロジェクトを作ったあとにdevtoolsを使いたければ以下のコマンド

$ phalcon webtools enable --directory=ディレクトリのパス

Command

Available commands:
  info             (alias of: i)
  commands         (alias of: list, enumerate)
  controller       (alias of: create-controller)
  module           (alias of: create-module)
  model            (alias of: create-model)
  all-models       (alias of: create-all-models)
  project          (alias of: create-project)
  scaffold         (alias of: create-scaffold)
  migration        (alias of: create-migration)
  webtools         (alias of: create-webtools)
  serve            (alias of: server)
  console          (alias of: shell, psysh)

Projectの作成

$ phalcon project app

ファイル構造

Phalcon はアプリケーション開発において特定のファイル構造を強制しません。Phalcon は疎結合になっているため、あなたのやりやすいファイル構造でアプリケーションを実装することができます。 このチュートリアルの出発点として、次のような構造にしてみましょう。

tutorial/
  app/
    controllers/
    models/
    views/
  public/
    css/
    img/
    js/

Bootstrap

あなたが最初に作成する必要のあるファイルは bootstrap ファイルです。このファイルはとても重要であり、アプリケーションのベースとなり、すべての側面をコントロールすることを可能にします。このファイルでは、コンポーネントの初期化だけでなく、アプリケ>$ 結局のところ、下記の3つを行う事になります。 * オートローダの設定 * 依存性の管理 *リクエストの対処

DIコンテナとは、

アプリケーションにDI(Dependency Injection: 依存性注入)機能を提供するフレームワーク。 依存性注入とはソフトウェアのうち、外部の環境などに依存する部分(データへのアクセスなど)を切り離し、 ソフトウェアの外部から提供できるようにするという考え方。

PHP DI DI・DIコンテナ、ちゃんと理解出来てる・・?

$ php -S localhost:8000 -t ./public

もし「Volt directory can't be written」と表示されたら? これは、app/cache の書き込み権限による問題。

$ chmod 777 app/cache

PhalconPHPはキャッシュで読み込んだりするので、デザイン編集などをやっていてHTMLやCSSがうまく変更されないときがある。 そいうったときは一度このフォルダのキャッシュを削除するとよい。

$ rm app/chache *.php

以上。おわり。