<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>

<channel>
	<title>samuraiengine</title>
	<atom:link href="http://samuraiengine.com/old/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://samuraiengine.com/old</link>
	<description>3.1415926535</description>
	<pubDate>Tue, 29 Jun 2010 04:57:53 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>アイフォンからNowって&#8230;</title>
		<link>http://samuraiengine.com/old/?p=502</link>
		<comments>http://samuraiengine.com/old/?p=502#comments</comments>
		<pubDate>Tue, 29 Jun 2010 04:57:53 +0000</pubDate>
		<dc:creator>samuraiengine</dc:creator>
		
		<category><![CDATA[なう]]></category>

		<guid isPermaLink="false">http://samuraiengine.com/old/?p=502</guid>
		<description><![CDATA[アイフォンからNowってみたなう
]]></description>
			<content:encoded><![CDATA[<p>アイフォンからNowってみたなう</p>
]]></content:encoded>
			<wfw:commentRss>http://samuraiengine.com/old/?feed=rss2&amp;p=502</wfw:commentRss>
		</item>
		<item>
		<title>関数　array_filter</title>
		<link>http://samuraiengine.com/old/?p=500</link>
		<comments>http://samuraiengine.com/old/?p=500#comments</comments>
		<pubDate>Wed, 31 Mar 2010 05:52:37 +0000</pubDate>
		<dc:creator>samuraiengine</dc:creator>
		
		<category><![CDATA[関数]]></category>

		<category><![CDATA[array_filter]]></category>

		<guid isPermaLink="false">http://samuraiengine.com/?p=500</guid>
		<description><![CDATA[あまり使わない関数
array_filter()



    空の要素が混じっているのを取り除く
    $arr = array(1,2,,3,,4,5,,,,6);

    $result = array_filter(arr,”array_null_del&#34;));     

    //配列中の空を削除
　//trueを返せばその値だけ$resultに入る
    function _array_null_del($v){
     if($v == null &#124;&#124; $v == &#34;&#34;){
         return false;
    [...]]]></description>
			<content:encoded><![CDATA[<p>あまり使わない関数<br />
array_filter()</p>
<div style="margin-top:10px"></div>
<pre class="syntax-highlight:php">

    空の要素が混じっているのを取り除く
    $arr = array(1,2,,3,,4,5,,,,6);

    $result = array_filter(arr,”array_null_del&quot;));     

    //配列中の空を削除
　//trueを返せばその値だけ$resultに入る
    function _array_null_del($v){
     if($v == null || $v == &quot;&quot;){
         return false;
        }
        return true;
    }

    $resultの中はarray(1,2,3,4,5,6)となる
</pre>
<div style="margin-top:10px"></div>
<p>何のときに使用したのかわすれたが、配列の空の要素だけ取り除きたかった時があったのでメモ書き。</p>
]]></content:encoded>
			<wfw:commentRss>http://samuraiengine.com/old/?feed=rss2&amp;p=500</wfw:commentRss>
		</item>
		<item>
		<title>CakePHP-しくみのお勉強</title>
		<link>http://samuraiengine.com/old/?p=492</link>
		<comments>http://samuraiengine.com/old/?p=492#comments</comments>
		<pubDate>Sun, 14 Feb 2010 05:12:00 +0000</pubDate>
		<dc:creator>samuraiengine</dc:creator>
		
		<category><![CDATA[CakePHP]]></category>

		<category><![CDATA[cakeのurl解決]]></category>

		<guid isPermaLink="false">http://samuraiengine.com/?p=492</guid>
		<description><![CDATA[CakePHPをダウンロードして解凍して展開後のお話。
URLがどのように解釈されているかのお話。

【.htaccess】と【index.php】
この２つの組み合わせが３つ存在します。

1つ目：CakePHP直下
2つ目：app直下
3つ目：webroot直下

それぞれの【.htaccess】の中身が下記になります。
【CakePHP直下】

&#60;IfModule mod_rewrite.c&#62;
   RewriteEngine on
   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]
&#60;/IfModule&#62;


【app直下】

&#60;IfModule mod_rewrite.c&#62;
    RewriteEngine on
    RewriteRule    ^$    webroot/    [L]
    RewriteRule   [...]]]></description>
			<content:encoded><![CDATA[<p>CakePHPをダウンロードして解凍して展開後のお話。<br />
URLがどのように解釈されているかのお話。</p>
<div style="padding-top:10px;"></div>
<p>【.htaccess】と【index.php】<br />
この２つの組み合わせが３つ存在します。</p>
<div style="padding-top:10px;"></div>
<p>1つ目：CakePHP直下<br />
2つ目：app直下<br />
3つ目：webroot直下</p>
<div style="padding-top:10px;"></div>
<p>それぞれの【.htaccess】の中身が下記になります。</p>
<p>【CakePHP直下】</p>
<pre class="syntax-highlight:php">
&lt;IfModule mod_rewrite.c&gt;
   RewriteEngine on
   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]
&lt;/IfModule&gt;
</pre>
<div style="padding-top:5px;"></div>
<p>【app直下】</p>
<pre class="syntax-highlight:php">
&lt;IfModule mod_rewrite.c&gt;
    RewriteEngine on
    RewriteRule    ^$    webroot/    [L]
    RewriteRule    (.*) webroot/$1    [L]
&lt;/IfModule&gt;
</pre>
<div style="padding-top:5px;"></div>
<p>【webroot直下】</p>
<pre class="syntax-highlight:php">
&lt;IfModule mod_rewrite.c&gt;
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
&lt;/IfModule&gt;
</pre>
<div style="padding-top:10px;"></div>
<p>【.htaccess】ファイルの設定により、<br />
<span style="color:#ff00cc">http://URL/controller/action/param</span><br />
となっているURLでアクセスした場合、<br />
<span style="color:#ff00cc">http://URL/app/webroot/index.php?url=controller/action/param</span><br />
と言うように解釈され処理が進んでいきます。</p>
<div style="padding-top:10px;"></div>
<p>これには当然<span style="color:blue">mod_rewrite</span>や<span style="color:blue">.htaccess</span>が利用できる場合に限られますが、じゃー利用できない場合はと言うと、<br />
【CakePHP直下】の<span style="color:blue">index.php</span>ファイルが<span style="color:blue">mod_rewrite・.htaccess</span>の変わりを行います。</p>
<div style="padding-top:10px;"></div>
<p>そして解釈されたURL(http://URL/app/webroot/index.php?url=controller/action/paramの形)は<br />
【webroot直下】の<span style="color:blue">index.php</span>ファイル内でDispatcherに渡されて,URLからコントローラー・モデル・ビューを判断し、それぞれのインスタンス生成が行われます。</p>
<div style="padding-top:10px;"></div>
<p>この時、命名規則に関する処理は【inflector.php】と言うファイル内で解決されています。<br />
単語の先頭を大文字にしたり複数形の処理もここで行われています。<br />
personがなんでpeopleって解釈されるか疑問だったんですよねー</p>
<div style="padding-top:10px;"></div>
<p>ちなみに<span style="color:blue">dispatcher</span>と<span style="color:blue">inflector</span>のファイルの場所は<br />
cake/dispatcher.php<br />
cake/libs/inflector.php<br />
にあります。</p>
]]></content:encoded>
			<wfw:commentRss>http://samuraiengine.com/old/?feed=rss2&amp;p=492</wfw:commentRss>
		</item>
		<item>
		<title>CakePHP-debug</title>
		<link>http://samuraiengine.com/old/?p=485</link>
		<comments>http://samuraiengine.com/old/?p=485#comments</comments>
		<pubDate>Mon, 04 Jan 2010 05:31:29 +0000</pubDate>
		<dc:creator>samuraiengine</dc:creator>
		
		<category><![CDATA[CakePHP]]></category>

		<category><![CDATA[debug]]></category>

		<guid isPermaLink="false">http://samuraiengine.com/?p=485</guid>
		<description><![CDATA[app/config/core.php内の下記定数の値を０～３のどれかにを変更することで
cakephpのデバッグをコントロールできます。
Configure::write(&#8217;debug&#8217;, 0～3);

0:本番運用
エラー出力無し。
app/tmp/cache/models　の中にDBスキーマのキャッシュファイルがあるが,
これは【1】以上にしないと更新されない。
【0】後にDBを変更したときは、手動でこのキャッシュファイルを消さないといけない。

1:開発用(PHPエラー出力)
error_reporting(E_ALL)
ini_set(&#8217;display_errors&#8217;, 1)
上記2つが内部的に実行されます。

2:開発用(1プラスDBクエリー情報の出力)
・ (default) 8 queries took 10 ms」クエリの数(8)と，合計時間(10ms)
・Nr　実行したクエリーの連番
・Query　実行したSQL文
・Error　エラー情報
・Affected　UPDATEやDELETEの際は，影響した行数、 SELECTの場合は結果の行数
・Nom. rows　結果の行数
・Took (ms)　DB上でのクエリの実行時間

3:開発用(2プラスコントローラーのオブジェクト情報)
ビューかコントローラーに記述する必要がある。
これはあまり使用しないでしょう。オブジェクト情報が見たければ、その都度pr($this)など記述
すればいいと思います。
]]></description>
			<content:encoded><![CDATA[<p>app/config/core.php内の下記定数の値を０～３のどれかにを変更することで<br />
cakephpのデバッグをコントロールできます。<br />
<span style="font-weight:bold;">Configure::write(&#8217;debug&#8217;, 0～3);</span></p>
<div style="padding-top:10px;"></div>
<p style="color:#ff00cc;font-weight:bold;">0:本番運用</p>
<p>エラー出力無し。<br />
app/tmp/cache/models　の中にDBスキーマのキャッシュファイルがあるが,<br />
これは【1】以上にしないと更新されない。<br />
【0】後にDBを変更したときは、手動でこのキャッシュファイルを消さないといけない。</p>
<div style="padding-top:20px;"></div>
<p style="color:#ff00cc;font-weight:bold;">1:開発用(PHPエラー出力)</p>
<p>error_reporting(E_ALL)<br />
ini_set(&#8217;display_errors&#8217;, 1)<br />
上記2つが内部的に実行されます。</p>
<div style="padding-top:20px;"></div>
<p style="color:#ff00cc;font-weight:bold;">2:開発用(1プラスDBクエリー情報の出力)</p>
<p>・ (default) 8 queries took 10 ms」クエリの数(8)と，合計時間(10ms)<br />
・Nr　実行したクエリーの連番<br />
・Query　実行したSQL文<br />
・Error　エラー情報<br />
・Affected　UPDATEやDELETEの際は，影響した行数、 SELECTの場合は結果の行数<br />
・Nom. rows　結果の行数<br />
・Took (ms)　DB上でのクエリの実行時間</p>
<div style="padding-top:20px;"></div>
<p style="color:#ff00cc;font-weight:bold;">3:開発用(2プラスコントローラーのオブジェクト情報)</p>
<p>ビューかコントローラーに<?php echo $cakeDebug ?>記述する必要がある。<br />
これはあまり使用しないでしょう。オブジェクト情報が見たければ、その都度pr($this)など記述<br />
すればいいと思います。</p>
]]></content:encoded>
			<wfw:commentRss>http://samuraiengine.com/old/?feed=rss2&amp;p=485</wfw:commentRss>
		</item>
		<item>
		<title>Linuxコマンド</title>
		<link>http://samuraiengine.com/old/?p=476</link>
		<comments>http://samuraiengine.com/old/?p=476#comments</comments>
		<pubDate>Tue, 22 Dec 2009 05:08:05 +0000</pubDate>
		<dc:creator>samuraiengine</dc:creator>
		
		<category><![CDATA[Linux]]></category>

		<category><![CDATA[samba]]></category>

		<category><![CDATA[ubuntu]]></category>

		<category><![CDATA[vim]]></category>

		<category><![CDATA[コマンド]]></category>

		<guid isPermaLink="false">http://samuraiengine.com/?p=476</guid>
		<description><![CDATA[ubuntu9.10
数年ぶりのリナックス。
viのコマンドもすべて忘却。
コマンドメモ、とりあえずメモ。
あとから整理する、と思う。


マウントされているUSBなどの情報一覧。
どのデバイスが使われているのか見る時
スーパーユーザーじゃないと表示されない
fdisk -l

フォルダやファイルのパーミッションまで見れる
ls -l

どっとから始まるファイルなども表示
ls -a

スーパーユーザーに変身
このコマンドの後パスワード聞いてくる
sudo su

現在実行中のプロセス表示
ps ax
ps ax&#124;grep firefox

プロセスを停止
kill 上記プロセス番号

IPアドレス確認
ifconfig

画面のTOPからの入力になる
Ctrl＋l

自動起動されているものを見る
3,4,5がonで自動起動されている
chkconfig --list

----------------------samba----------------------
サンババージョン確認
vは大文字
smdb -V

/etc/samba/smb.conf
smb.conf設定ファイル
強制的にパーミッション７７７で共有を作成する時
read only = No
force create mode = 0777
force directory mode = 0777
guest only = Yes

ユーザー追加
smbpasswd -a ﾕｰｻﾞｰ名

サンバ再起動
sudo /etc/init.d/samba restart

----------------------vim----------------------
インサートモードに移行
i
コマンドモードに移行
ESCﾎﾞﾀﾝ

上書き保存
:w

上書き保存＋終了
ZZ

ページ下送り
Ctrl＋d
ページ上送り
Ctrl＋u

x カーソル位置の文字を削除
dd 行の削除
p 削除データの貼り付け
u 編集の取り消し
/ 文字の検索
? 逆方向の文字の検索 

a コマンドモードから入力モードに切り替え（カーソル位置の後ろから文章を追加）
i コマンドモードから入力モードに切り替え（カーソル位置の前に文章を追加）
o コマンドモードから入力モードに切り替え（カーソル位置の行の次の行に追加）
R コマンドモードから入力モードに切り替え（カーソル位置の文章を置き換え）
Esc 入力モードからコマンドモードに切り替え 

:w→Enter viを終了せずにファイルを保存
ZZ ファイルを保存しviを終了
:q !→Enter ファイルを保存せずにviを終了 

]]></description>
			<content:encoded><![CDATA[<p>ubuntu9.10<br />
数年ぶりのリナックス。<br />
viのコマンドもすべて忘却。</p>
<p>コマンドメモ、とりあえずメモ。<br />
あとから整理する、と思う。</p>
<pre class="syntax-highlight:php">

マウントされているUSBなどの情報一覧。
どのデバイスが使われているのか見る時
スーパーユーザーじゃないと表示されない
fdisk -l

フォルダやファイルのパーミッションまで見れる
ls -l

どっとから始まるファイルなども表示
ls -a

スーパーユーザーに変身
このコマンドの後パスワード聞いてくる
sudo su

現在実行中のプロセス表示
ps ax
ps ax|grep firefox

プロセスを停止
kill 上記プロセス番号

IPアドレス確認
ifconfig

画面のTOPからの入力になる
Ctrl＋l

自動起動されているものを見る
3,4,5がonで自動起動されている
chkconfig --list

----------------------samba----------------------
サンババージョン確認
vは大文字
smdb -V

/etc/samba/smb.conf
smb.conf設定ファイル
強制的にパーミッション７７７で共有を作成する時
read only = No
force create mode = 0777
force directory mode = 0777
guest only = Yes

ユーザー追加
smbpasswd -a ﾕｰｻﾞｰ名

サンバ再起動
sudo /etc/init.d/samba restart

----------------------vim----------------------
インサートモードに移行
i
コマンドモードに移行
ESCﾎﾞﾀﾝ

上書き保存
:w

上書き保存＋終了
ZZ

ページ下送り
Ctrl＋d
ページ上送り
Ctrl＋u

x カーソル位置の文字を削除
dd 行の削除
p 削除データの貼り付け
u 編集の取り消し
/ 文字の検索
? 逆方向の文字の検索 

a コマンドモードから入力モードに切り替え（カーソル位置の後ろから文章を追加）
i コマンドモードから入力モードに切り替え（カーソル位置の前に文章を追加）
o コマンドモードから入力モードに切り替え（カーソル位置の行の次の行に追加）
R コマンドモードから入力モードに切り替え（カーソル位置の文章を置き換え）
Esc 入力モードからコマンドモードに切り替え 

:w→Enter viを終了せずにファイルを保存
ZZ ファイルを保存しviを終了
:q !→Enter ファイルを保存せずにviを終了 
</pre>
]]></content:encoded>
			<wfw:commentRss>http://samuraiengine.com/old/?feed=rss2&amp;p=476</wfw:commentRss>
		</item>
		<item>
		<title>CakePHP-sqlのログをファイルに取得</title>
		<link>http://samuraiengine.com/old/?p=472</link>
		<comments>http://samuraiengine.com/old/?p=472#comments</comments>
		<pubDate>Mon, 21 Dec 2009 00:50:59 +0000</pubDate>
		<dc:creator>samuraiengine</dc:creator>
		
		<category><![CDATA[CakePHP]]></category>

		<category><![CDATA[sqlログ]]></category>

		<guid isPermaLink="false">http://samuraiengine.com/?p=472</guid>
		<description><![CDATA[app/config/core.php ファイル内の
Configure::write(&#8217;debug&#8217;, 2);
この設定が２以上で発行されたSQL文がページの下部に表示されます。
発行されたSQL文をファイルに取得します。
①
cake/libs/model/datasources/dbo
　　┃
　　┗dbo_mysql_log.phpを作成

&#60;?php

uses(&#34;model&#34;.DS.&#34;datasources&#34;.DS.&#34;dbo&#34;.DS.&#34;dbo_mysql&#34;);
class DboMysqlLog extends DboMysql{

	var $queryNo = 1;

	function execute($sql){

		$ret = parent::execute($sql);

		if(defined(&#34;LOG_SQL&#34;) &#38;&#38; LOG_SQL){
			$this-&#62;log(sprintf(&#34;%d.%s&#34;,$this-&#62;queryNo,$sql),LOG_DEBUG);
			$this-&#62;queryNo++;
		}

		return $ret;

	}
}

?&#62;
--

②app/config/database.php
　　┃
　　┗&#8217;driver&#8217; => &#8216;mysql_log&#8217;,にする

var $default = array(
	&#039;driver&#039; =&#62; &#039;mysql_log&#039;,
	&#039;persistent&#039; =&#62; false,
	&#039;host&#039; =&#62; &#039;localhost&#039;,
	&#039;login&#039; =&#62; &#039;verynight&#039;,
	&#039;password&#039; =&#62; &#039;xxxxxx&#039;,
	&#039;database&#039; =&#62; &#039;database&#039;,
	&#039;prefix&#039; =&#62; &#039;&#039;,
	&#039;encoding&#039; =&#62; &#039;utf-8&#039;
);
--

③定数LOG_SQLをapp/config/bootstrap.phpにてdefineする
これで
app/tmp/logs/debug.log　にSQL文が出力される。
出力内容を見やすくカスタマイズするには①のdbo_mysql_log.phpファイルにて
function showLog()をオーバーライドしてゴリゴリ書くらしい。
]]></description>
			<content:encoded><![CDATA[<p>app/config/core.php ファイル内の<br />
Configure::write(&#8217;debug&#8217;, 2);<br />
この設定が２以上で発行されたSQL文がページの下部に表示されます。</p>
<p>発行されたSQL文をファイルに取得します。</p>
<p>①<br />
cake/libs/model/datasources/dbo<br />
　　┃<br />
　　┗dbo_mysql_log.phpを作成</p>
<pre class="syntax-highlight:php">
&lt;?php

uses(&quot;model&quot;.DS.&quot;datasources&quot;.DS.&quot;dbo&quot;.DS.&quot;dbo_mysql&quot;);
class DboMysqlLog extends DboMysql{

	var $queryNo = 1;

	function execute($sql){

		$ret = parent::execute($sql);

		if(defined(&quot;LOG_SQL&quot;) &amp;&amp; LOG_SQL){
			$this-&gt;log(sprintf(&quot;%d.%s&quot;,$this-&gt;queryNo,$sql),LOG_DEBUG);
			$this-&gt;queryNo++;
		}

		return $ret;

	}
}

?&gt;
--
</pre>
<p>②app/config/database.php<br />
　　┃<br />
　　┗&#8217;driver&#8217; => &#8216;mysql_log&#8217;,にする</p>
<pre class="syntax-highlight:php">
var $default = array(
	&#039;driver&#039; =&gt; &#039;mysql_log&#039;,
	&#039;persistent&#039; =&gt; false,
	&#039;host&#039; =&gt; &#039;localhost&#039;,
	&#039;login&#039; =&gt; &#039;verynight&#039;,
	&#039;password&#039; =&gt; &#039;xxxxxx&#039;,
	&#039;database&#039; =&gt; &#039;database&#039;,
	&#039;prefix&#039; =&gt; &#039;&#039;,
	&#039;encoding&#039; =&gt; &#039;utf-8&#039;
);
--
</pre>
<p>③定数LOG_SQLをapp/config/bootstrap.phpにてdefineする</p>
<p>これで<br />
app/tmp/logs/debug.log　にSQL文が出力される。</p>
<p>出力内容を見やすくカスタマイズするには①のdbo_mysql_log.phpファイルにて<br />
function showLog()をオーバーライドしてゴリゴリ書くらしい。</p>
]]></content:encoded>
			<wfw:commentRss>http://samuraiengine.com/old/?feed=rss2&amp;p=472</wfw:commentRss>
		</item>
		<item>
		<title>CakePHP-javascript</title>
		<link>http://samuraiengine.com/old/?p=468</link>
		<comments>http://samuraiengine.com/old/?p=468#comments</comments>
		<pubDate>Tue, 15 Dec 2009 00:35:05 +0000</pubDate>
		<dc:creator>samuraiengine</dc:creator>
		
		<category><![CDATA[CakePHP]]></category>

		<guid isPermaLink="false">http://samuraiengine.com/?p=468</guid>
		<description><![CDATA[head内にjavascriptの外部ファイルのリンクを貼りたい場合は
layout内に下記を記述する。

echo $scripts_for_layout;
-


コントローラーにて下記を記述する。

public $helpers = array(&#34;javascript&#34;);
-


ビューにて

//$scripts_for_layoutに出力
$javascript-&#62;link(&#34;jquery&#34;,false);

//trueなら、記述したその場所に出力される
echo $javascript-&#62;link(&#34;jquery-1.3.2.min&#34;,true);

-

と記述する。第2引数のfalseが【$scripts_for_layout】に出力するという意味。
trueならその場に書き出すので、echoがいる。
]]></description>
			<content:encoded><![CDATA[<p>head内にjavascriptの外部ファイルのリンクを貼りたい場合は</p>
<p style="color:#ff00cc;font-weight:bold;">layout内に下記を記述する。</p>
<pre class="syntax-highlight:php">
echo $scripts_for_layout;
-
</pre>
<div style="padding-top:15px"></div>
<p style="color:#ff00cc;font-weight:bold;">コントローラーにて下記を記述する。</p>
<pre class="syntax-highlight:php">
public $helpers = array(&quot;javascript&quot;);
-
</pre>
<div style="padding-top:15px"></div>
<p style="color:#ff00cc;font-weight:bold;">ビューにて</p>
<pre class="syntax-highlight:php">
//$scripts_for_layoutに出力
$javascript-&gt;link(&quot;jquery&quot;,false);

//trueなら、記述したその場所に出力される
echo $javascript-&gt;link(&quot;jquery-1.3.2.min&quot;,true);

-
</pre>
<p>と記述する。第2引数のfalseが【$scripts_for_layout】に出力するという意味。<br />
trueならその場に書き出すので、echoがいる。</p>
]]></content:encoded>
			<wfw:commentRss>http://samuraiengine.com/old/?feed=rss2&amp;p=468</wfw:commentRss>
		</item>
		<item>
		<title>CakePHP-フォルダ</title>
		<link>http://samuraiengine.com/old/?p=460</link>
		<comments>http://samuraiengine.com/old/?p=460#comments</comments>
		<pubDate>Mon, 14 Dec 2009 00:45:59 +0000</pubDate>
		<dc:creator>samuraiengine</dc:creator>
		
		<category><![CDATA[CakePHP]]></category>

		<category><![CDATA[フォルダ]]></category>

		<category><![CDATA[新規タグの追加]]></category>

		<guid isPermaLink="false">http://samuraiengine.com/?p=460</guid>
		<description><![CDATA[フォルダのメモ



app/config/
        ┃
        ┣bootstrap.php
        ┃     ┣defineなどの定数を記述
        ┃     ┗配列をfunctionで設定
        ┃
     [...]]]></description>
			<content:encoded><![CDATA[<p>フォルダのメモ</p>
<div style="padding-top:10px;"></div>
<pre class="syntax-highlight:php">

app/config/
        ┃
        ┣bootstrap.php
        ┃     ┣defineなどの定数を記述
        ┃     ┗配列をfunctionで設定
        ┃
        ┣core.php
        ┃     ┗debugのモードの設定(Configure::write(&#039;debug&#039;, 2);)
        ┃
        ┗database.php
    	         ┗データベース設定

app/view/
        ┃
        ┣elements/
        ┃     ┗各ページに埋め込むテンプレート
        ┃
        ┗layouts/
                ┗全ページ共通のレイアウトのテンプレート

app/webroot/
        ┃
        ┣css/
        ┣img/
        ┣js/
        ┗index.php
    	       ┣appディレクトリやcakeディレクトリの設定
               ┣ini_setなどの設定もここでやる
               ┗cakeに依存しないhtmlはこの場所に置く

---
</pre>
]]></content:encoded>
			<wfw:commentRss>http://samuraiengine.com/old/?feed=rss2&amp;p=460</wfw:commentRss>
		</item>
		<item>
		<title>CakePHP-コントローラー</title>
		<link>http://samuraiengine.com/old/?p=457</link>
		<comments>http://samuraiengine.com/old/?p=457#comments</comments>
		<pubDate>Mon, 14 Dec 2009 00:29:49 +0000</pubDate>
		<dc:creator>samuraiengine</dc:creator>
		
		<category><![CDATA[CakePHP]]></category>

		<category><![CDATA[コントローラー]]></category>

		<guid isPermaLink="false">http://samuraiengine.com/?p=457</guid>
		<description><![CDATA[コントローラー内での基本的な設定メモ


/**
 *  デフォルトtrue
 *  trueでビューを使用するので各アクションに対応したテンプレを用意しないといけない(テンプレないとエラー出る)
 */
public $autoRender = true;

/**
 *	デフォルトtrue、上下に紺色のCAKEのデフォルトレイアウトが表示される
 *	そのデフォルトレイアウトを変更する場合は下記の$layoutで指定して、
 *	その名前のテンプレートをview/layout/の中に置く
 */
public $autoLayout = true;

/**
 *	これを設定するとLayout/xxx.ctp が適用されるようになる(全ページ共通テンプレート)
 */
public $layout = &#34;pagebase&#34;;

]]></description>
			<content:encoded><![CDATA[<p>コントローラー内での基本的な設定メモ</p>
<div style="padding-top:20px"></div>
<pre class="syntax-highlight:php">
/**
 *  デフォルトtrue
 *  trueでビューを使用するので各アクションに対応したテンプレを用意しないといけない(テンプレないとエラー出る)
 */
public $autoRender = true;

/**
 *	デフォルトtrue、上下に紺色のCAKEのデフォルトレイアウトが表示される
 *	そのデフォルトレイアウトを変更する場合は下記の$layoutで指定して、
 *	その名前のテンプレートをview/layout/の中に置く
 */
public $autoLayout = true;

/**
 *	これを設定するとLayout/xxx.ctp が適用されるようになる(全ページ共通テンプレート)
 */
public $layout = &quot;pagebase&quot;;
</pre>
]]></content:encoded>
			<wfw:commentRss>http://samuraiengine.com/old/?feed=rss2&amp;p=457</wfw:commentRss>
		</item>
		<item>
		<title>smarty-ループ</title>
		<link>http://samuraiengine.com/old/?p=453</link>
		<comments>http://samuraiengine.com/old/?p=453#comments</comments>
		<pubDate>Fri, 20 Nov 2009 00:16:08 +0000</pubDate>
		<dc:creator>samuraiengine</dc:creator>
		
		<category><![CDATA[Smarty]]></category>

		<category><![CDATA[foreach]]></category>

		<category><![CDATA[section]]></category>

		<guid isPermaLink="false">http://samuraiengine.com/?p=453</guid>
		<description><![CDATA[smartyでfor文のようなループをする場合,テンプレートファイルに下記のように書きます。


{section name=myloop start=1 loop=100 step=1}
     {$smarty.section.myloop.index}
{/section}
これで1から１００まで１刻みずつ表示されます。


smartyでのforeach時のループ回数の取得は

{foreach from=$dataList item=data name=myloop}
    {$data}
    {if $smarty.foreach.myloop.iteration % 3 == 0}
       &#60;br /&#62;
    {/if}
{/foreach}

foreachにてnameでループ名をつけ、$smarty.foreach.myloop.iteration　でループ回数が取得できます。
上記は3回毎に改行するような場合に使えるのではないでしょうか。

]]></description>
			<content:encoded><![CDATA[<p>smartyでfor文のようなループをする場合,テンプレートファイルに下記のように書きます。</p>
<div style="pading-top:10px"></div>
<pre class="syntax-highlight:php">
{section name=myloop start=1 loop=100 step=1}
     {$smarty.section.myloop.index}
{/section}
これで1から１００まで１刻みずつ表示されます。
</pre>
<div style="pading-top:10px"></div>
<p>smartyでのforeach時のループ回数の取得は</p>
<pre class="syntax-highlight:php">
{foreach from=$dataList item=data name=myloop}
    {$data}
    {if $smarty.foreach.myloop.iteration % 3 == 0}
       &lt;br /&gt;
    {/if}
{/foreach}

foreachにてnameでループ名をつけ、$smarty.foreach.myloop.iteration　でループ回数が取得できます。
上記は3回毎に改行するような場合に使えるのではないでしょうか。
</pre>
]]></content:encoded>
			<wfw:commentRss>http://samuraiengine.com/old/?feed=rss2&amp;p=453</wfw:commentRss>
		</item>
	</channel>
</rss>

