てきとう

ワーワーゆうとります

CakePHP モデルの中でモデルを使うよ

App::import('Model','Moge'); Class Hoge extends AppModel { var $Moge; //afterSaveとかなんでもいいけど function afterSave(){ $this->Moge = new Moge(); } }bindModelとかするのかと思いきやVendorsとかわらない感じでいけるのですね。

飲むヨーグルトはさらさらではいけない。 程よくドロリとした舌触りが重要だ。 そして甘すぎず、果物なんてチャラついたものもいらない (「よく振ってお飲み下さい」のプレッシャーについては後日改めて場を設けたい) 飲むヨーグルトは飲み物以上デザート未…

cakePHP $this->updateAll()で条件付きの更新

1〜4までのIDを持ったレコード以外のnameをnullに設定してやるわよ! $idArr = array(1,2,3,4); $this->Model->updateAll( array('name' => null), array('NOT' => array('id' => $idArr)) );なんでも$this->Model->save()でやろうとしていたわよ! $this->M…

cakePHP $this->setがうざい

いまいち$this->set()とすれ違う事があるので調べてみました。 $this->set()の詳細↓ function set($one, $two = null) { $data = array(); if (is_array($one)) { if (is_array($two)) { $data = array_combine($one, $two); } else { $data = $one; } } els…

cakePHP multipleのセレクトボックス

<select name="book[id][]" multiple> <option value="aaa">あああ</option> <option value="iii">いいい</option> </select> とかやらないとデータが入ってこないのですね。めんどくさい。

PHP PHP4で昔の日付を操作

DateTimeが使えないので。アホか。$before2m = strftime("%Y-%m-%d", strtotime("-2 month"));

MySQL MySQLにまつわるエトセトラ

コマンドラインで打っていていろいろ忘れそうになるのでメモします。 きれいにまとめようとかいう気が残念なくらいありません。# mysql -u ユーザー名 -p で、パスワード入れる。 ちなみに # mysql -u ユーザー名 -p --default-character-set=utf8 とかやる…

Smartyちょっと便利なメモ

・カンマで区切って配列にぶっこみ {assign var="newArray" value=","|explode:$csv}・Dumpしてやる {$newArray|@debug_print_var}あんまりこういうのやらないのがいいのでしょうけど

jQuery 基本

今やモテモテのjavascriptのライブラリ。 最近よく格闘するので書いておきます。 どんな感じの子かといいますと・CSSまわりをいじれる ・グローバルのネームスペースを占拠しない ・他のライブラリと仲良くやれるとか。ざっくりそんな感じ。便利です。$("#ho…

夏だわっしょいページネーションまつり

Paginationとは、リスト表示なんかした時に「●●件ずつ区切って表示」という処理をやってくれる便利機能です。 findの代わりにDBの情報を持ってきてくれるので、加工済みデータ等には使えません。 Paginationがやってくれる動きは、だいたいこんな感じ。 デ…

CakePHP モデルを介さずにデータのやりとり

ConnectionManagerを使うわざわざmodelを通さなくてもいいんじゃないか(パフォーマンス的に)とかなんとかいう場合。 でも多分、modelは使ったほうがいいです。Validationもあることですし。便利だし。 さすがに直接pg_connectとかはあまりに男塾。 したっ…

PHP インター・フェイスッ!

PHPでジョジョを書こうかなというカテゴリーです。 少しアレンジを加えただけで、タイトルがもうジョジョ風です。ベネです。 いいですね。今後もベイビー・フェイス!みたいなノリで書こうと思います。☆スタンド・インターフェイス interface stand { const …

CakePHP ビューの基本

・拡張子は「.ctp」(1.2系)と「.thtml」(1.2系, 1.1系) ・基本的に、コントローラー内のfunction名と同じviewファイルを表示してくれますが、 別に表示したいファイルがある場合は以下のように指定する。 $this->render('hoge'); ★レイアウト レイアウトと…

CakePHP モデルの基本

class Hoge extends AppModel { //なんかいろいろ*1 } ・DBへのアクセスは、モデルを通して行う。(通さない方法もあります) ・モデルの定義は、PHPのクラスで、必ずAppModelクラスを継承させる ・ファイル名はテーブル名の単数形.php ・「どこのDBに、どん…

CakePHP コントローラーの基本

class UsersController extends AppController { var $name = 'Users'; var $helpers = array('Html','Form','Javascript'); var $uses = 'Hogehoge'; var $components = 'Foo'; function Moge() { //ここに動き。 } } ・名前は基本的に自由ですが、わかりや…

CakePHP データベース設計

database.phpを作る。 とりあえず作る。 database.php.defaultを元にしてつくります class DATABASE_CONFIG { var $default = array( 'driver' => 'mysql', 'connect' => 'mysql_connect', 'host' => 'localhost', 'login' => 'user', 'password' => 'passwd…

PHP 最適化12の裏技

こちらのサイトから。http://www.moskalyuk.com/blog/php-optimization-tips/1272 PHPについてのお話であって、cakePHPに限った話題じゃないのですが、 ここによると以下の12のTIPSを参考にすると幸せになれるとかでメモっときます。 この人は他にも「オープ…

CakePHP 関数

関数debug デバッグレベルが2以上の時に第一変数の内容をダンプします。 debug( ダンプしたい変数, htmlで整形された状態で見たい場合は、true スタックトレースを表示したい場合は、true ) h htmlspecialcharsへのエイリアス h(エスケープしたい文字列) a …

CakePHP 用意済み定数

ファイルパス関連の定数も覚えておくと便利っぽいです。DS PHP の DIRECTORY_SEPARATORと同じ。ディレクトリの区切り文字。[ / ]APP_DIR アプリケーションディレクトリのディレクトリ名( app ) ROOT app、cakeディレクトリの属するディレクトリパス( /home/s…

CakePHP キホンザベーシック

去年末あたりから格闘中のハイテクフレームワークCakePHP PHPすらいまいち解ってないのに、やるハメに挑戦することに。 今は薦められるがまま1.2を使っていますが、なんか1.1系列と、色々あるみたいです。 MVCという便利なアレがあります。アレとは何ぞ、と…