Archives by date

You are browsing the site archives by date.

【PHP】空のjsonオブジェクトを生成する。

json_encode((object) null);

これで「{}」を出力することが出来る。

 

【Javascript】iPhoneのJavascriptで正しく日付文字列をパース出来ない問題。

PCでは出来てもiPhoneだと正しくパースしてくれないとかあるのね。

// PCだと問題ないけどiPhoneだとNaNになる。
var date = '2014-08-08T21:24:15+0900';
new Date(date);

なのでこうしてやる。

var date = '2014-08-08T21:24:15+0900';
var dateArr = date.split(/[- :T\+]/);
new Date(dateArr[0], dateArr[1]-1, dateArr[2], dateArr[3], dateArr[4], dateArr[5]);

これで完璧。

 

【Symfony2.3】アクセスしているホスト名によって開発と本番環境を分ける。

.htaccessで分岐させる。

デフォルトで入っているhtaccessファイルの42行目付近を下記のように変更。

開発環境のホストが.lcl、本番環境が.comの場合。

    # Rewrite all other queries to the front controller.
    RewriteCond %{HTTP_HOST} \.com$
    RewriteRule .? %{ENV:BASE}/app.php [L]
    
    RewriteCond %{HTTP_HOST} \.lcl$
    RewriteRule .? %{ENV:BASE}/app_dev.php [L]

こんな感じでOK。

 

【apache】mod_rewrite再入門。

ということで下記のページが非常に参考になる。

http://tm.root-n.com/server:apache:module:rewrite

クリックカウントも取れたりするんだね。

 

【Symfony2.3】現在の実行環境を取得する。

メモ。

$this->get('kernel')->getEnvironment();

これで環境を取得できるので、開発、テスト、及び本番環境で処理を分岐したい場合は下記のように記述すればOK。

if(in_array($this->get('kernel')->getEnvironment(), ['test', 'dev'])) {
    // テスト環境用の処理
}

 

【CSS】各種ブラウザでTransparencyとgradientを用いる際の記述方法。

メモ。

background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
background-image: -moz-linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
background-image: -ms-linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
background-image: -o-linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);

 

【CSS】Media Queries、自分用まとめ。

メモ。

■Max Width:
ビューエリアの最大幅。このサイズより小さい場合に適用

■Min Width:
ビューエリアの最小幅。このサイズより大きい場合に適用

■Max Device Width:
デバイスサイズの最大幅。このサイズより小さい場合に適用

■Min Device Width:
デバイスサイズの最小幅。このサイズより大きい場合に適用

■Device Pixel Ratio:
デバイスの解像度(webkit)

■Orientation:デバイスの向き

 

【Symfony2.3】@Routerで特定文字列を含むURI以外を全て一つのアクションで拾う。

シングルページアプリケーションを構築していて、どのURI出来ても特定のアクションを返したい場合。

※下記はURIにapiを含まない場合の全てのルーティングを拾う例。

    /**
     * @Route("/{_all}", name="_all", requirements={"_all" = "^(?!.*api).*$"})
     */
    public function indexAction()
    {
    }

こんな感じでOK。