サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは本日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。
PHPの文字列比較に関しては古の時代から皆がいばら道を通っているので今更何か語ることも無いんだけどやっぱり良くハマっちゃうということで軽くメモを残しておく。 とりあえずは先人達の苦悩ということでこのあたりの記事は見ておいた方がいいだろう。 素晴らしき自動的な世界〜或いは「型のない」世界〜 - がるの健忘録 PHPでの入力値チェックのすり抜け 上記記事の方が名づけたと思われる(w)いわゆる「2a問題」というものについて書いていく。 この2a問題というのはもう一度再確認すると <?php $a = '2a'; $b = 2; if ( $a == $b ) { // ここを通る } という問題のことだ。 何故こうなるかは元記事やマニュアル等に詳しく書かれているが、カンタンに説明すると「2a」という文字列を数値評価すると「2」として扱われるということだ。 実はコレはPerlでもまったく同じ問題を
いわゆるUNIT test系のプログラムなのですが。最近 SimpleTest がいたくお気に入り。 理由は「インストールがシンプルだから」。 とりあえず http://simpletest.sourceforge.net/ からダウンロード。tar ballがゲトれるはずなので、解凍して適当なディレクトリにほぉりこんで終わり。 ああなんてシンプルw 使い方のサンプルは http://blog.zuzara.com/2007/03/01/194/ とか http://project-p.jp/halt/kinowiki/php/SimpleTest とか http://project-p.jp/halt/kinowiki/:WD_29/SimpleTest/%E5%9F%BA%E6%9C%AC%E7%9A%84%E3%81%AA%E3%83%A1%E3%82%BD%E3%83%83%E3%
Paginationに関して調べてた時に、色々と見つけた記事を忘れないように書いておこう。 ■CakePHP Pagination まとめ http://www.syuhari.jp/blog/archives/122 ↑ソートの指定とか、昇順のしていなどをまとめている ■Paginatorの使い方。CakePHP1.2 http://www.cpa-lab.com/tech/053 ↑Paginateのオプションとかを詳細にまとめてる ■PaginatorでPaginateしてみた。 http://www.spokslog.com/book/paginator_tests/preview/ ↑ページングの表示方法を色々なパターンでコードとつき合わせて見せているページ。 ■PaginationHelperClass Reference http://api.cakephp.org/clas
Transitionコンポーネント1.0をリリースしました。 http://d.hatena.ne.jp/hiromi2424/20100617/1276757385 ソースはこちら http://github.com/hiromi2424/TransitionComponent 画面右上あたり「Download Sources」をクリックすると、アーカイブがダウンロードできます。 pull request お待ちしています:) イントロダクション 複数ページの入力画面、皆さんどういう処理をしていますか? 同じアクション内で遷移する場合、データが存在しるかチェックしてどこの位置にいるか判断して・・・と、色々と面倒ですよね。 他のアクションに分割しても似たような処理が続くことになります。 そこでTransitionコンポーネントの出番です。 このコンポーネントを使うと、大抵のページ遷移は1行
久々にphpの勉強を兼ねて、昨日から何となくCakePHPを触りだしました。ちょっと楽しい。 で、本題。 app/views/layouts/default.ctp(cake/libs/view/layouts/default.ctpからコピー)に$title_for_layout;というのがあり、それを設定するためにcontrollerで $this->pageTitle = 'タイトル'; みたいなことやってみたんですが表示されず。 ググって出てきたのにおかしいなぁとか思ったら、CakePHP1.3で消えてたのですね。 Google Groups502 Bad Gateway View::set('title', $var) no longer sets $title_for_layout when rendering the layout. $title_for_layout is
cakephp1.2でgenerateListが非推奨になったのでそれに変わる方法を探しました。 どうやらfind(‘list’)を使うと、対象モデルの「id」と「name」、または「id」と「title」の配列がかえってくるみたい。 配列の組み合わせを変えるには、find() の第2引数で指定するといいらしい。 $fields = array( "fields" => array( "User.display_name")); $users = $this->User->find("list", $fields); ?> とすると、 Array ( [1] => admin1 [2] => owner1 [3] => manager1 [4] => manager2 ) となり、 array( "User.email", "User.display_name")); $users =
CakePHP の Pagination に関してまとめてみました。 コントローラでコンポーネント、ヘルパーに Pagination を指定 // 使用コンポーネント名 var $components = array('Pagination'); // 使用ヘルパー名 var $helpers = array('Pagination'); コントローラの一覧表示するアクションでの一覧表示取得方法 $this->Pagination->modelClass = 'Model'; // 使用するモデル $this->Pagination->sortBy = 'created'; // デフォルトのソートするフィールド名 $this->Pagination->direction = 'DESC'; // デフォルトの昇順、降順を指定 $this->Pagination->show = 10; /
cakephp1.2RC2の環境を前提にしています。 例えば下記のように、 http://hogehoge.com/hoge/index/id1234 GETでid1234というパラメータ値を渡してそれを検索条件にしているような場合、viewのファイルに下記の1文を記述すればpaginationのURLにもパラメータが引き継がれます。 追記 紛らわしい書き方したみたいですみません。GETで送信されたというのは、フォームからのGETリクエストではなく、URLのリンクの中のパラメータという意味です。例えば、複数のショップの各月の売り上げ一覧画面があるとして、その一覧から特定ショップの各月の売り上げだけを見たいという場合に、一覧画面でショップ名の箇所などに特定ショップのショップIDをURLに含ませたリンク(invoice/index/shop123)を作成し、そこから遷移するようなものを下記の説
CakePHP のページネーション機能を使うと、/hoge/fuga/page:2 のようなコロン区切りパラメータのリンクになってしまいます。 これは気持ち悪いので、何とか /hoge/fuga?page=2 にする方法を考えました。 やはり気になっている方はいるようです。 ページが見つかりませんでした | 15Pub まず、フレームワークの PaginatorHelper を app/views/helpers 以下にコピーします。 $ cp cake/libs/view/helpers/paginator.php app/views/helpers/ 次に、コピーした paginator.php の url メソッドを編集します。 <?php /** * Merges passed URL options with current pagination state to generat
akiyanさんのすばらしい資料を参考にさせていただいていたのだけれど、若干不満があって調べてみた。 極める routes.php (CakePHP 1.2) : akiyan.com スライド28ページ $this->paginate = array('Model' => array( 'options' => array( '?' => array('keyword' => 'fuga'), '#' => 'results', ) );というコードなのだけれど、問題は、2ページ目なんかを表示した時に、 Notice (8): Undefined index: limit [CORE/cake/libs/view/helpers/paginator.php, line 414]というのが発生することだった。これはこれでその場しのぎで回避する方法もあるんだけど調べてみたところ、 cake/
次によく使われるコントローラ属性は、CakePHPに現在のコントローラが、どんなヘルパー、コンポーネント、モデルを使用するのかを伝える属性です。これらの属性により、MVCの各クラスをクラス変数として(例えば、$this->ModelName として)利用できるようになります。 各コントローラは、デフォルトでいくつかのクラスを利用できるようになっています。ですから、コントローラにまったく設定を追加しなくてよい場合もあります。 コントローラは、主要モデルにはデフォルトでアクセスできます。RecipesControllerは、デフォルトで、Recipeモデルに $this->Recipe という方法でアクセスでき、ProductsControllerも $this->Product という形でProductモデルを使うことができます。しかしながら、$uses 変数でコントローラが他のモデルへアク
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く