【Symfony2.3】テーブルスキーマを強制的に更新する。

エンティティを追加した時とかベンダーを追加した時とかに実行。

php app/console doctrine:schema:update --force

 

【Symfony2.3】コンソールからエンティティクラスを作成する。

ひな形メモ。

php app/console generate:doctrine:entity --entity=HogeFugaBundle:Piyo --format=annotation --fields="name:string(255) age:smallint(1) createdAt:datetime updatedAt:datetime"

int型のカラムにunsigned属性などを付与したい場合は一旦ここでエンティティを生成してから、テーブルスキーマを更新する前に生成されたエンティティクラスのアノテーション部分を[こうすれば]OK。

コンソールから属性付与するやり方は調べたけどわかんなかった。

 

【Symfony2.3】コンソールからバンドルを作成する。

ひな形メモ。

php app/console generate:bundle --namespace=Hoge/FugaBundle --format=yml

 

【Symfony2.3】エンティティクラスのアノテーションでunsigned属性を設定する。

メモ。

/**
 * @ORM\Column(name="id", type="integer", options={"unsigned"=true})
 */

 

【Symfony2.3】でなにかおかしいと思ったら。

まずは黙ってキャッシュクリア。

これはガチ!!!!!!!!マジで!!!!!!

php app/console cache:clear --no-warmup

そしてキャッシュクリア時は–no-warmupオプションをつけたほうが幸せになれる模様。

 

【PHP】月末最終日をサクっと取得する。

Datetimeクラスを用いるとモテモテになれる。

// 当月最終日を求める
$lastday = new Datetime('last day of now');

// 時間を指定する
$lastday = new Datetime('last day of now 12:00');

// これでも取得できる模様
$lastday = new Datetime('last day of this month');

うん。まじかっこいいよ。

 

【CakePHP2.5】Cookieコンポーネントの有効期限を動的に設定する。

コントローラーから有効期限を指定しなおして発行したい場合、

「$this->Cookie->time」を直接書き換えても反映されないので注意が必要。

有効期限を動的に書き換えたい場合は、write()メソッドの第4引数に期限を渡せばOK。

$this->Cookie->write('data', $data, true, 0);

と言った感じ。

 

【jQuery】$.ajax()でクロスドメインの壁をぶち破る。

ためのメモ。

下記ライブラリを用いることで可能。

https://github.com/padolsey/jquery.fn/tree/master/cross-domain-ajax

jQuery本体を読み込んだ後に上記のライブラリを読み込む。

<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script type="text/javascript" src="jquery.xdomainajax.js"></script>

あとは普段通り$.ajax()で通信を行うだけ。

簡単だね。

詳細な使い方は公式リポジトリを参照されたし。