LoginSignup
3
2

More than 5 years have passed since last update.

SE歴8年の無職がSilexでサイト構築に挑む

Last updated at Posted at 2017-11-28

簡単にできるって書いてたからやってみました。

ComposerからSilexをダウンロード

書いてあるコードはこちら。

composer require silex/silex:~2.0 twig/twig

composerというのがイマイチまだ理解しきれてないんですけど、こうやって書いてあるからにはダウンロードしてくれるマンなんでしょう。

あと最初、silexとtwigって書いてあるのに1行しかねえぞ!!

とか意味不明なこと思っててすみませんでした。文盲。
並べて書けるんですね。
ただ問題は次。

どこに?

詰まりました。

ダウンロード……するのは、プロジェクトを置く場所?的なところですよね、多分。

どこに作るの?
デスクトップ?

というわけではないはずなので、空気を読んでプロジェクト用のディレクトリを作成します。

考えてみればこの程度のことをわざわざ書く必要もなかった。

実行。

こんなになりました。

$ cd sample2
$ ls
composer.json   composer.lock   vendor

$ ls vendor/
autoload.php    pimple      silex       twig
composer    psr     symfony

以降の手順でindexとかなんか色々作るんですが。

sample2に作るのか、vendorに作るのかがわかりません。

たぶんここ(sample2)だとは思うんですけど……書いてて悲しくなってきた……。

中身をつくる

index.php

公式ドキュメント通りで全く問題なしです。

公式ドキュメント is 何。

ああ、確かにここに書かれてるサンプルと同じですね。
なるほど。

viを最近ようやくおぼろげに覚えたのでサクッと作成しました。

  1. vi index.php
  2. [A](追加書き込み)
  3. コピペ。Command+vが問題なく使えて良かった
  4. [Esc](編集終了)
  5. [:x]から[Enter](上書き保存して終了)

こんな感じで。

PHP(5.4.0以上)のビルトインサーバーを起ち上げて、指定したホストにアクセスすれば「Hello, World!!」が表示されます。

なんて?

とりあえず、書いてあるコマンドを叩いてみます。
ルートディレクトリは自分でいいんだよね?
ってことでこんな感じで。

php -S localhost:8000 -t ./

起動は成功。
アクセスでエラー。

デバッグ

見てみるとindex.phpの2行目でエラーとのこと。
そんなんファイルパスしか書かれてないぞ。
つまりファイルパスがだめと。

該当部分はこんな感じ。

require_once __DIR__.'/../vendor/autoload.php';

えっと、現在のところから一個戻ってvendorにアクセスしてるから……。

sample2じゃなくてもう一つ深いところに作らないといけないんですね、これ。

じゃあ適当にwwwとかフォルダ作ってそこを指定してサーバーを立ち上げると……成功しました。
なるほどー。

twigでviewを作る

よくわかりませんが、layout.twigとindex.twigというものを作成するようです。

どこにだろう。

例によってぶちあたる疑問。

まあいいやとばかりに作成しました。
あとからmoveすることにします。

Twig表示のためにindex.phpを修正

次にindex.phpを修正するようです。
テキストの中に、ディレクトリを指定する場所があります。
なるほどここで指定するわけですか。
じゃあviewとか作ってそれに放り込めばいいのかな。

指定先はこんな感じに修正。

'twig.path' => '../view'

どこを置き換える?

あと、書いてあるphpって全部じゃないですよねたぶん。

適当に読み解いて、app->getが重複していたので『Routeがどうこう』ってコメント以下を全とっかえしました。

そして実行

スクリーンショット 2017-11-28 16.00.36.jpg

できましたー!!

課題

これローカルだけどGCPにアップロードするにはどうするんだろう?
とりあえずステップで進んでいきます。
次はユーザ認証。
参考資料はこれ。

PHPマイクロフレームワークのSilexでログイン処理をささっとつくる | | リーテラトバリタブログ

3
2
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2