composer autoload対応の素晴らしさを前回の記事で書いたけど、最小限の例を用意していないので、ちょっと書いてみる。
composer autoloadを使うと、requireを書く必要が(ほぼ)無くなるよ。
composerがインストールされている前提で、まず、プロジェクトルートにcomposer.json
ファイルを作成する。
services: | |
twig.extension.text: | |
class: Twig_Extensions_Extension_Text | |
tags: | |
- { name: twig.extension } |
// | |
// RootViewController.m | |
// Locations | |
// | |
// Created by nazo on 12/05/31. | |
// Copyright (c) 2012年 __MyCompanyName__. All rights reserved. | |
// | |
#import "RootViewController.h" |
500エラーなら500.blade.php出してくれると思った?残念でした!HttpExceptionを継承してないと本番でもSymfonyのエラー画面になります!
本番でSymfonyのエラー画面出したい奴なんていないだろ…何考えてるんだよ…というわけでapp/Exceptions/Handler.php
を書き換える。
use Symfony\Component\HttpKernel\Exception\HttpException;
...
public function render($request, Exception $e)
{
$results = \DB::select('select * from articles where id = ?', [2]);
Query Builderの説明を読んだほうが早い。通常はEloquent使うと思うので使わないと思う。特殊なSQLを発行したい時に使おう。
use Illuminate\Database\Eloquent\Model;
class User extends Model
まあそんなことしないと思いますが… | |
ちなみにこれはlaravelの機能ではなく、phpdotenvというライブラリです。他言語のもあります。 |
ほっといたら例外はログに出るんだけど、例えばログには吐きたいけどcatchしてプログラムを終了させたくない時は、
try {
} catch(FooException $e) {
\App::make('Illuminate\Contracts\Debug\ExceptionHandler')->report($e);
// ...
}