3月 17

Viewで同じレイアウトでよく使うパーツを使うとき、renderElementを使います。
ログインフォームやサイドバーに出す部分などでよく使うやつです。

Smartyだとこんな感じですね。
index.tpl

{include file='form.tpl'} 
{include file='ranking.tpl'} 

Cakeの場合は以下のようになります。
index.ctp

    <?php echo $this->renderElement("form")?>
    <?php echo $this->renderElement("ranking")?>

下記のファイルがインクルードされます。

views/elements/form.ctp
views/elements/ranking.ctp

3月 17

Cakeでlistアクションにcategoryとpageを渡す場合、下記のようなURIになります。
http://localhost/blog/list/3/2

コントローラー側:

    function list( $category, $page ){
        //処理
    }

listアクションへのパラメーター数が違うパターンがあると面倒です。

下記のように”URL/パラメーター:値”の形にするとパラメーター付きで値を
渡せます。

http://localhost/blog/list/category:3/page:2
コントローラー側:

    function list(){
        $this->params['named']['category']; 
        $this->params['named']['page']; 
    }

3月 16

/cake/libs/view/layouts/default.ctp

/app/views/layouts/default.ctpにコピーして編集して使います。

コントローラーから下記のように指定できます。
(/app/views/layouts/admin.ctpを指定する場合)
$this->render($layout=’admin.ctp’, $file=’index.ctp’);

3月 16

アクション名ではないViewを使用させたいときは、下記のようにします。

function edit(){
     // renderでテンプレートを指定できます(add.ctpを指定)
     $this->render('add');
}

3月 15

PHP5にはSimpleXMLなどがありますが、CakePHPのXMLクラスでも同様に使えます。
ローカルファイルに使ったり、WEBAPIのリクエストURLやRSSを処理したり出来ます。


$xml_rakuten = "http://api.rakuten.co.jp/rws/2.0/rest?
developerId=[YOUR_developerID]
&operation=ItemSearch
&version=2009-04-15
&keyword=%E7%A6%8F%E8%A2%8B
&sort=%2BitemPrice";

uses('Xml');
$xml = new Xml($xml_rakuten);
$xml_array = Set::reverse($xml);

3月 10

Twitterで使える絵文字をまとめてみました。
コピペでつかえます。



♥ ✈ ☺ ♬ ☑
♠ ☎ ☻ ♫ ☒
♤ ☤ ☹ ♪ ♀
✩ ✉ ☠ ✔ ♂
★ ✇ ♺ ✖ ♨
❦ ☁ ✌ ♛ ❁
☪ ☂ ✏ ♝ ❀
☭ ☃ ☛ ♞ ✿
☮ ☼ ☚ ♘ ✾
☯ ☾ ☝ ♖ ✽
✝ ☄ ☟ ♟ ✺
☥ ✂ ✍ ♕ ✵
☉ ☇ ☈ ☡ ✠
☊ ☋ ☌ ☍ ♁
✇ ☢ ☣ ✣ ✡
☞ ☜ ✜ ✛ ❥
♈ ♉ ♊ ♋ ♌
♍ ♎ ♏ ♐ ♑
♒ ♓ ☬ ☫ ☨
☧ ☦ ✁ ✃ ✄
✎ ✐ ❂ ❉ ❆
♅ ♇ ♆ ♙ ♟
♔ ♕ ♖ ♗ ♘
♚ ♛ ♜ ♝ ♞
© ® ™ … ∞
¥ € £ ƒ $
≤ ≥ ∑ « »
ç ∫ µ ◊ ı
∆ Ω ≈ * §
• ¶ ¬ † &
¡ ¿ ø å ∂
œ Æ æ π ß
÷ ‰ √ ≠ %
˚ ˆ ˜ ˘ ¯
∑ º ª ‽ ?