<?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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
		xmlns:xhtml="http://www.w3.org/1999/xhtml"
>

<channel>
	<title>WIDGET-INFO &#187; Behavior</title>
	<atom:link href="http://blog.widget-info.net/category/cakephp/behavior/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.widget-info.net</link>
	<description>WIDGET-INFOではCakePHPやIPhone情報、その他開発に関する情報を発信</description>
	<lastBuildDate>Sat, 24 Dec 2011 20:47:30 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.widget-info.net/category/cakephp/behavior/feed/" />
		<item>
		<title>CakePHP　Behaviorのテンプレート</title>
		<link>http://blog.widget-info.net/2009/10/cakephp_behavior_template/</link>
		<comments>http://blog.widget-info.net/2009/10/cakephp_behavior_template/#comments</comments>
		<pubDate>Mon, 05 Oct 2009 23:04:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Behavior]]></category>
		<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[テンプレート]]></category>

		<guid isPermaLink="false">http://blog.widget-info.net/?p=311</guid>
		<description><![CDATA[CakePHPの自作ビヘイビア用のテンプレートを用意してみました。 毎回コーディングをするのが無駄に思えたので、自分用でもありますが。。。 ちなみに利用の際には「Template」の部分を変更してください。 ソースコード [...]]]></description>
			<content:encoded><![CDATA[<p>CakePHPの自作ビヘイビア用のテンプレートを用意してみました。<br />
毎回コーディングをするのが無駄に思えたので、自分用でもありますが。。。</p>
<p>ちなみに利用の際には「Template」の部分を変更してください。<br />
ソースコードは次になります。<br />
<span id="more-311"></span></p>
<pre class="brush:php">class TemplateBehavior extends ModelBehavior {

	var $settings = array();

	//setup()
	function setup(&amp;$model, $config = array()){
		$this-&gt;settings[$model-&gt;alias] = $config;
	}
	//cleanup()
	function cleanup(&amp;$model) {
		parent::cleanup($model);
	}
	//beforeFind()
	function beforeFind(&amp;$model, $query){

	}
	//afterFind()
	function afterFind(&amp;$model, $results, $primary){

	}
	//beforeValidate()
	function beforeValidate(&amp;$model){

	}
	//beforeSave()
	function beforeSave(&amp;$model){

	}
	//afterSave()
	function afterSave(&amp;$model, $created){

	}
	//beforeDelete()
	function beforeDelete(&amp;$model, $cascade = true){

	}
	//afterDelete()
	function afterDelete(&amp;$model){

	}
	//onError()
	function onError(&amp;$model, $error){

	}
}</pre>
<div class="fblike_button" style="margin: 10px 0;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fblog.widget-info.net%2F2009%2F10%2Fcakephp_behavior_template%2F&amp;layout=standard&amp;show_faces=false&amp;width=450&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:25px"></iframe></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.widget-info.net/2009/10/cakephp_behavior_template/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.widget-info.net/2009/10/cakephp_behavior_template/" />
	</item>
		<item>
		<title>CakePHP　Behaviorのsetup()注意点</title>
		<link>http://blog.widget-info.net/2009/10/cakephp_behavior_setup/</link>
		<comments>http://blog.widget-info.net/2009/10/cakephp_behavior_setup/#comments</comments>
		<pubDate>Sun, 04 Oct 2009 03:59:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Behavior]]></category>
		<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Controller]]></category>
		<category><![CDATA[Model]]></category>

		<guid isPermaLink="false">http://blog.widget-info.net/?p=299</guid>
		<description><![CDATA[CakePHPのビヘイビアでの注意点がひとつありましたのでメモとして。。。]]></description>
			<content:encoded><![CDATA[<p>CakePHPのビヘイビアでの注意点がひとつありましたのでメモとして。。。</p>
<p>ビヘイビアの「setup()」を利用する際に注意点がありました。<br />
特に気づかずに第2引数を変数などにセットすると、コントローラー内に<br />
2つ以上モデルが存在し、両方に同じビヘイビアを設定した場合、<br />
その設定が上書きされてしまう恐れがあります。</p>
<p>といってもイマイチな説明ですが（汗<br />
<span id="more-299"></span><br />
CakePHPの1.1から利用して同じ使い方（同じコード）で利用していたということと<br />
その現象になる設計が無かったのが幸いして、発見に至りました（笑</p>
<p>通常は1つのコントローラーに1つのモデルとしてコーディングしていきますが、<br />
設計によっては1つのコントローラーが2つのモデルを利用する場合もあるかと思います。<br />
モデル1対コントローラー1の関係で利用するビヘイビアの設計であればいいのですが<br />
ビヘイビアはモデル多対コントローラー1の考えが基本かと思います。<br />
その例としてコントローラーでは以下の使い方があると思います。</p>
<pre class="brush:php">//コントローラー内のモデル設定で
$uses=array('モデル1','モデル2');</pre>
<p>この場合、それぞれのモデルに1つのビヘイビアをセットしたとし、<br />
「setup()」の第2引数にも何かしらの設定をセットしたとします。<br />
ビヘイビアでは以下のような処理とすると</p>
<pre class="brush:php">function setup(&amp;$model, $config = array()) {
	$this-&gt;config = $config;
}</pre>
<p>ここで問題発生。。。<br />
この場合「モデル1」のビヘイビアの処理を実行しているのに、通常はモデル1に設定されている<br />
ビヘイビアの第2引数が利用されるのに、実際はモデル2の第2引数を利用しようとします。</p>
<p>どうやらCakePHP1.2の途中からビヘイビアの読み込み方が、若干変更されていたみたいですorz</p>
<p>そこで内部を調べた結果の対応策として以下の方法で対処が可能ということが判明しました。</p>
<pre class="brush:php">function setup(&amp;$model, $config = array()) {
	$this-&gt;config[$model-&gt;alias] = $config;
}</pre>
<p>こうするこで、問題なく実行しているモデルの第2引数を参照するようにすることが可能です。<br />
まぁ単純にモデル名で配列化しているというだけにはなります（笑
<div class="fblike_button" style="margin: 10px 0;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fblog.widget-info.net%2F2009%2F10%2Fcakephp_behavior_setup%2F&amp;layout=standard&amp;show_faces=false&amp;width=450&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:25px"></iframe></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.widget-info.net/2009/10/cakephp_behavior_setup/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.widget-info.net/2009/10/cakephp_behavior_setup/" />
	</item>
		<item>
		<title>Cakephp　「tbtransform」と「thselect」のバージョンアップ</title>
		<link>http://blog.widget-info.net/2009/10/cakephp_behavior_update/</link>
		<comments>http://blog.widget-info.net/2009/10/cakephp_behavior_update/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 22:22:48 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Behavior]]></category>
		<category><![CDATA[CakePHP]]></category>

		<guid isPermaLink="false">http://blog.widget-info.net/?p=296</guid>
		<description><![CDATA[以前公開しました、「tbtransform」と「tbtransform」をバージョンアップを行いました。]]></description>
			<content:encoded><![CDATA[<p>以前公開しました、「tbtransform」と「thselect」をバージョンアップを行いました。</p>
<p>といっても今回のバージョンアップでは機能面でのバージョンアップでは<br />
ありませんので、申し訳ないのですが。。。<br />
<span id="more-296"></span><br />
それぞれのビヘイビアでコードの間違いがありましたので、バージョンアップとなります。<br />
ダウンロードしていただいた方でご利用して頂いている方がいましたら、<br />
バージョンアップをお願いいたします。</p>
<p>なおバージョンアップの方法は既存のファイルに、バージョンアップのファイルを<br />
上書きしていただくだけとなります。<br />
またそれぞれの利用方法には変更はありません。</p>
<p><a title="Thselectヘルパー" href="http://www.widget-info.net/downloads/dlfile/thselect-1.1.0.zip">「thselect v1.1.0」はこちら</a></p>
<p><a title="tbtransformビヘイビア" href="http://www.widget-info.net/downloads/dlfile/tbtransform-1.1.0.zip">「tbtransform v1.1.0」はこちら</a>
<div class="fblike_button" style="margin: 10px 0;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fblog.widget-info.net%2F2009%2F10%2Fcakephp_behavior_update%2F&amp;layout=standard&amp;show_faces=false&amp;width=450&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:25px"></iframe></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.widget-info.net/2009/10/cakephp_behavior_update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.widget-info.net/2009/10/cakephp_behavior_update/" />
	</item>
		<item>
		<title>CakePHP　「tbtransform」の公開</title>
		<link>http://blog.widget-info.net/2009/09/cakephp_tbtransform_open/</link>
		<comments>http://blog.widget-info.net/2009/09/cakephp_tbtransform_open/#comments</comments>
		<pubDate>Sat, 12 Sep 2009 15:16:15 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Behavior]]></category>
		<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Model]]></category>
		<category><![CDATA[データベース]]></category>

		<guid isPermaLink="false">http://blog.widget-info.net/?p=180</guid>
		<description><![CDATA[CakePHPのビヘイビアで利用できる「tbtransform」を公開します。]]></description>
			<content:encoded><![CDATA[<p>CakePHPのビヘイビアで利用できる「tbtransform」を公開します。</p>
<p>このビヘイビアでは日本語入力を統一させるために<br />
英数字とスペースを対象に半角または全角に自動で変換するためのビヘイビアです。<br />
簡単な作りでもありますので、ビヘイビアの開発の参考になれば幸いです。</p>
<p>公開ページは<a title="tbtransformビヘイビア" href="http://blog.widget-info.net/tbtransform_behavior/">こちら</a>です。
<div class="fblike_button" style="margin: 10px 0;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fblog.widget-info.net%2F2009%2F09%2Fcakephp_tbtransform_open%2F&amp;layout=standard&amp;show_faces=false&amp;width=450&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:25px"></iframe></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.widget-info.net/2009/09/cakephp_tbtransform_open/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.widget-info.net/2009/09/cakephp_tbtransform_open/" />
	</item>
		<item>
		<title>CakePHP　ビヘイビア(behavior)の実行時期</title>
		<link>http://blog.widget-info.net/2009/08/cakephp_behavior_load/</link>
		<comments>http://blog.widget-info.net/2009/08/cakephp_behavior_load/#comments</comments>
		<pubDate>Wed, 26 Aug 2009 03:37:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Behavior]]></category>
		<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Model]]></category>

		<guid isPermaLink="false">http://blog.widget-info.net/?p=43</guid>
		<description><![CDATA[CakePHPのビヘイビア(behavior)の実行時期について]]></description>
			<content:encoded><![CDATA[<p>ビヘイビアの実行は基本、モデルが特定のタイミングで実行されます。<br />
自動で実行してくれることは大変便利で無駄なコーディングをしなくてすむ利点があります。</p>
<p>しかし任意のタイミングで実行してほしい場合もあります。<br />
そんな場合はビヘイビアを途中でつけたり外したりすることがCakePHPでは可能にできてます。<br />
<span id="more-43"></span><br />
ビヘイビアを途中でつけたり外したりする場合はコントローラー側にコーディングしていきます。<br />
<a title="エンコードビヘイビアv1.2" href="http://blog.widget-info.net/2009/08/cakephp_enc_behavior_update/" target="_self">前回</a>のエンコードビヘイビアを例に記述すると<br />
ビヘイビアをつける場合は<br />
$this-&gt;モデル名-&gt;Behaviors-&gt;attach(&#8216;Encoding&#8217;,array(&#8216;to&#8217;=&gt;&#8217;EUC-JP&#8217;,'save&#8217;=&gt;&#8217;utf8&#8242;));<br />
と記述することで任意のタイミングでビヘイビアを取り付けることが可能です。</p>
<p>またビヘイビアを外す場合は<br />
$this-&gt;モデル名-&gt;Behaviors-&gt;detach(&#8216;Encoding&#8217;);<br />
と記述することで任意のタイミングで取り外すことができます。</p>
<p>エンコードビヘイビアではこの指定方法はあまりメリットはありませんが<br />
独自のビヘイビアを考える際はこの方法もあることを念頭にビヘイビアを設計すると<br />
ビヘイビアの利便性が向上するかもしれません。
<div class="fblike_button" style="margin: 10px 0;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fblog.widget-info.net%2F2009%2F08%2Fcakephp_behavior_load%2F&amp;layout=standard&amp;show_faces=false&amp;width=450&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:25px"></iframe></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.widget-info.net/2009/08/cakephp_behavior_load/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.widget-info.net/2009/08/cakephp_behavior_load/" />
	</item>
		<item>
		<title>CakePHP　エンコードビヘイビア</title>
		<link>http://blog.widget-info.net/2009/08/cakephp_enc_all/</link>
		<comments>http://blog.widget-info.net/2009/08/cakephp_enc_all/#comments</comments>
		<pubDate>Mon, 24 Aug 2009 23:25:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Behavior]]></category>
		<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Model]]></category>
		<category><![CDATA[エンコード]]></category>

		<guid isPermaLink="false">http://blog.widget-info.net/?p=53</guid>
		<description><![CDATA[エンコードビヘイビアのまとめページを作成]]></description>
			<content:encoded><![CDATA[<p>エンコードビヘイビアのまとめページを作成しました。</p>
<p>CakePHPの開発のヒントになれば幸いです(笑</p>
<p><a href="http://blog.widget-info.net/encoding_behavior/">エンコードビヘイビアのまとめへ</a>
<div class="fblike_button" style="margin: 10px 0;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fblog.widget-info.net%2F2009%2F08%2Fcakephp_enc_all%2F&amp;layout=standard&amp;show_faces=false&amp;width=450&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:25px"></iframe></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.widget-info.net/2009/08/cakephp_enc_all/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.widget-info.net/2009/08/cakephp_enc_all/" />
	</item>
		<item>
		<title>CakePHP　エンコードbehaviorの拡張</title>
		<link>http://blog.widget-info.net/2009/08/cakephp_enc_behavior_update/</link>
		<comments>http://blog.widget-info.net/2009/08/cakephp_enc_behavior_update/#comments</comments>
		<pubDate>Sun, 23 Aug 2009 14:12:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Behavior]]></category>
		<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Model]]></category>
		<category><![CDATA[エンコード]]></category>

		<guid isPermaLink="false">http://blog.widget-info.net/?p=38</guid>
		<description><![CDATA[CakePHPのエンコードbehaviorを拡張する]]></description>
			<content:encoded><![CDATA[<p><a title="エンコードビヘイビアv1" href="http://blog.widget-info.net/2009/08/cakephp_enc_behavior/" target="_self">前回</a>はビヘイビアの使い方を簡単な例で解説させていただきましたが<br />
さらに拡張していく方法を例で解説していこうかと思います。</p>
<p>さらに拡張と言っても簡単な拡張例です(笑<br />
<a title="エンコードビヘイビアv1" href="../2009/08/cakephp_enc_behavior/" target="_self">前回</a>のエンコードビヘイビアでは、実は自由度が不足していることに<br />
お気づきでしょうか?ヒントはエンコードです(笑<br />
<span id="more-38"></span>実はエンコードが固定なのです(汗<br />
CakePHPをデフォルトで利用する場合はいいのかもしれませんが、<br />
実際の現場は違います(泣</p>
<p>「SJIS」やら「EUC-JP」など開発するアプリケーションごとに<br />
利用するエンコードは変わります。<br />
今は「UTF8」が基準になりつつありますが日本では「SJIS」や「EUC-JP」が<br />
いまだに利用されています。特に携帯電話。。。</p>
<p>さて本題ですが、<a title="エンコードビヘイビアv1" href="../2009/08/cakephp_enc_behavior/" target="_self">前回</a>紹介させていただいたビヘイビアでは<br />
エンコードが変わるたびに、別のビヘイビアとして複製しなければならない仕様でした。<br />
そこでこのビヘイビアが実行されるたびに、エンコード指定を変更できるようにしましょう。<br />
※先にそれをリリースしてくれというのはご勘弁を(笑</p>
<p><a title="エンコードビヘイビアv1" href="../2009/08/cakephp_enc_behavior/" target="_self">前回</a>のソースコードを次のように変更していきます。<br />
まずはエンコードをセットするメソッドを次のように追加していきます。</p>
<pre class="brush:php">function setEncoding($config = array()){
$this-&gt;encoding_to = (isset($config['to']) &amp;&amp; !empty($config['to']))?$config['to']:'SJIS';
$this-&gt;save_encoding_to = (isset($config['save']) &amp;&amp; !empty($config['save']))?$config['save']:Configure::read('App.encoding');
}</pre>
<p>追加したら次は「setup」を次のように変更します。</p>
<pre class="brush:php">function setup(&amp;$model, $config = array()) {
$this-&gt;model = $model;
$this-&gt;setEncoding($config);
}</pre>
<p>これで拡張は完了です。<br />
「setup」の第2引数ではモデルからこのビヘイビアが実行された際に<br />
このビヘイビアに対して値を渡すための変数になります。</p>
<p>つまりモデルで次のように指定することが可能になります。</p>
<pre class="brush:php">$actsAs = array('Encoding'=&gt;array('to'=&gt;'EUC-JP','save'=&gt;'utf8'));</pre>
<p>の場合は「EUC-JP」へ</p>
<pre class="brush:php">$actsAs = array('Encoding'=&gt;array('to'=&gt;'SJIS','save'=&gt;'utf8'));</pre>
<p>の場合は「SJIS」<br />
なにも指定しなかった場合は「SJIS」が基本としています。</p>
<p>いかがでしょう?自由度が多少なりとも高くなったと思います(汗<br />
これでこのビヘイビアを複製することなく、1つで複数のエンコード変換に対応できます。</p>
<p>実際のコーディング結果は以下のリンクに例としてダウンロードができます。<br />
<a title="エンコード" href="http://blog.widget-info.net/files/dl/encoding-1.2.0.zip" target="_blank">エンコードbehavior</a></p>
<p>ちなみコード中にでてくる</p>
<pre class="brush:php">Configure::read('App.encoding')</pre>
<p>を不思議に思ったかたもいると思います。<br />
これは「app/config/core.php」に設定されている基本エンコード指定値を呼び出すコードです。
<div class="fblike_button" style="margin: 10px 0;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fblog.widget-info.net%2F2009%2F08%2Fcakephp_enc_behavior_update%2F&amp;layout=standard&amp;show_faces=false&amp;width=450&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:25px"></iframe></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.widget-info.net/2009/08/cakephp_enc_behavior_update/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.widget-info.net/2009/08/cakephp_enc_behavior_update/" />
	</item>
		<item>
		<title>CakePHP　エンコードbehavior</title>
		<link>http://blog.widget-info.net/2009/08/cakephp_enc_behavior/</link>
		<comments>http://blog.widget-info.net/2009/08/cakephp_enc_behavior/#comments</comments>
		<pubDate>Tue, 18 Aug 2009 12:19:33 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Behavior]]></category>
		<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[Model]]></category>
		<category><![CDATA[エンコード]]></category>

		<guid isPermaLink="false">http://blog.widget-info.net/?p=33</guid>
		<description><![CDATA[ビヘイビアの作成例です。]]></description>
			<content:encoded><![CDATA[<p>ビヘイビアの作成例です。<br />
ビヘイビアとは、どのモデルに対しても機能拡張できるライブラリです。</p>
<p><span id="more-33"></span>といっても言葉で表すより例を。。。</p>
<p>下記リンクより簡単なビヘイビアの例がありますので、ファイルをダウンロードしてみてください。</p>
<p><a title="エンコード" href="http://www.widget-info.net/downloads/dlfile/encoding-1.1.0.zip" target="_blank">エンコードbehavior v1.1.0</a><br />
最新バージョンは<a title="エンコードビヘイビアv1.2" href="http://blog.widget-info.net/encoding_behavior/">こちら</a>から</p>
<p>ダウンロードしたファイルを解凍すると「encoding.php」がありますので<br />
このファイルを「app/models/behaviors」にアップロードしてください。</p>
<p>このビヘイビアはデータベースから取得したデータを任意の文字コードに自動変換するビヘイビアです。<br />
またデータベースへの保存時には任意の文字コードに変換してから保存してくれます。</p>
<p>さて、このビヘイビアをどのようにモデルに適用をするかですが。。。</p>
<p>この機能を適用したいモデルに以下のように記述してください。</p>
<pre class="brush:php">var $actsAs = array('Encoding' =&gt; array());</pre>
<p>サンプルの設定はこれだけです(笑<br />
その後「findAll」や「find」をしてもらうと、「UTF-8」から「SJIS」へ<br />
データベースからの取得データの文字コードが変換されていると思います。</p>
<p><del datetime="2009-09-14T13:18:00+00:00">さらに詳しいビヘイビアの利用方法は、またの機会に(笑</del>
<div class="fblike_button" style="margin: 10px 0;"><iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fblog.widget-info.net%2F2009%2F08%2Fcakephp_enc_behavior%2F&amp;layout=standard&amp;show_faces=false&amp;width=450&amp;action=like&amp;colorscheme=light" scrolling="no" frameborder="0" allowTransparency="true" style="border:none; overflow:hidden; width:450px; height:25px"></iframe></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.widget-info.net/2009/08/cakephp_enc_behavior/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://blog.widget-info.net/2009/08/cakephp_enc_behavior/" />
	</item>
	</channel>
</rss>

