Laravelの開発用雛形を変えて次世代に挑むことにした

Posted: 2014-12-14 15:03 |  laravel 
開発時に使っている雛形のリポジトリを変更しました
ytake雛形リポジトリ
脱jquery / backbone という事で、
Laravelインストール時のページもvirtualDOMにしました
phperでこれからReact.jsに挑戦するのは結構良い事なんじゃないかと思いました
grunt-reactなども加えて大分楽になりました・・
デフォルトはcdnを見ているのでブラウザでコンパイルされますので、
productionでは使わない様にしましょう!
jsxじゃなくて全部jsで書く!という人はいりませんが・。
ソースコードはpublic/assets/js/app.jsにありますので、
これから始めるphperの方は参考程度にどうぞ!
それとxhprofがpackagistにあるので、開発時にページ毎で確認できる様に加えました
導入方法や、設置の方法は@localdiskさんのLaravel で xhprof を手軽につかう
にあります
自分の雛形に加えたのは、local時にしか実行されない app/start/local.phpに下記の様に記述してあります
 

 /** @var \Illuminate\Foundation\Application $app */
$app->booted(function () {
    xhprof_enable(XHPROF_FLAGS_CPU | XHPROF_FLAGS_MEMORY);
});
$app->events->listen('creating:*', function($view) {
    $projectName = "Application.BasicPack";
    $profilerData = xhprof_disable();
    $profiler = new \XHProfRuns_Default();
    $runId = $profiler->save_run($profilerData, $projectName);
    $public = url();
    $content = "
            <div class=\"label label-danger\" style=\"position: absolute; bottom: 10px; right: 10px;\">
                <a href=\"{$public}/xhprof_html/index.php?run={$runId}&source={$projectName}\" target=\"_blank\" style=\"color: #ffffff; text-decoration: none;\">Profiler</a>
            </div>";
    $view->getFactory()->inject('debug.profiler', $content);
アプリケーション実行時にプロファイラーを有効にして、
viewレンダリング時に結果の画面を教える、という様にしてあります
Laravelには処理中にいくつかイベントがあり、ユーザーがコードを実装する部分は
ほとんどがbootからレスポンスを返す手前のafterまでなので、
且つレンダリングイベントが発生する時はcreating: * なので
shutdownで結果画面の遷移ボタンが任意の場所で生成できないのでそうしました
厳密に終了まで見る場合はshutdownにしましょう
Laravel5で今のところこのlocal.phpとか実行環境.phpは内容に見えますが、
自分で付け加えるだけですので、フレームワークの機能というわけではありません
5まだかなー!

about ytake

執筆に参加しています


Laravel お役立ち情報

share



このエントリーをはてなブックマークに追加

Categories

laravel 45

DTM 0

music 0

PHP全般 31

0

JAPAN 1

WORLD 1

javascript 4

RDBMS 1

NoSQL 1

NewSQL 1

Recent Posts

Ad

comments powered by Disqus

GitHub

Social Links

Author


クリエイティブ・コモンズ・ライセンス
Yuuki Takezawa 作『Ytake Blog』はクリエイティブ・コモンズ 表示 - 非営利 4.0 国際 ライセンス で提供されています。

© ytake/comnect All Rights Reserved. 2014