<?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>sylvan &#187; PHP</title>
	<atom:link href="http://www.sylvan-l.net/b/tag/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.sylvan-l.net/b</link>
	<description>GTD、ユーザビリティ、iPhone、本、アート</description>
	<lastBuildDate>Sat, 04 Feb 2012 17:44:00 +0000</lastBuildDate>
	<language>en</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://www.sylvan-l.net/b/tag/php/feed/" />
		<item>
		<title>Mac 10.6.2 への apache 2.2.9 と php 5.3.1 のインストール</title>
		<link>http://www.sylvan-l.net/b/2009/12/27/mac-10-6-2-%e3%81%b8%e3%81%ae-apache-2-2-9-%e3%81%a8-php-5-3-1-%e3%81%ae%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab/</link>
		<comments>http://www.sylvan-l.net/b/2009/12/27/mac-10-6-2-%e3%81%b8%e3%81%ae-apache-2-2-9-%e3%81%a8-php-5-3-1-%e3%81%ae%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab/#comments</comments>
		<pubDate>Sun, 27 Dec 2009 07:33:54 +0000</pubDate>
		<dc:creator>sylvan</dc:creator>
				<category><![CDATA[Web開発関連]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.sylvan-l.net/b/?p=2288</guid>
		<description><![CDATA[mac には /usr/local ディレクトリがないのでまず作成する。 sudo mkdir /usr/local sudo mkdir /usr/local/src sudo mkdir /usr/local/apache sudo mkdir /usr/local/php sudo chmod 777 /usr/local/src 次に apache のインストール。 cd /usr/local/src wget http://archive.apache.org/dist/httpd/httpd-2.2.9.tar.gz tar xzvf httpd-2.2.9.tar.gz cd xzvf httpd-2.2.9 ./configure --prefix=/usr/local/apache/httpd-2.2.9 make sudo make install cd /usr/local/apache/ sudo ln -s /usr/local/apache/httpd-2.2.9 current gd を利用するのに libpng がいるので port でインストール。 sudo port install [...]]]></description>
			<content:encoded><![CDATA[<p>mac には /usr/local ディレクトリがないのでまず作成する。</p>
<div class="syntax_hilite">
<div id="code-9">
<div class="code">sudo mkdir /usr/local<br />
sudo mkdir /usr/local/src<br />
sudo mkdir /usr/local/apache<br />
sudo mkdir /usr/local/php<br />
sudo chmod <span style="color:#800000;">777</span> /usr/local/src</div>
</div>
</div>
<p></p>
<p>次に apache のインストール。</p>
<div class="syntax_hilite">
<div id="code-10">
<div class="code">cd /usr/local/src<br />
wget http:<span style="color:#FF9933; font-style:italic;">//archive.apache.org/dist/httpd/httpd-2.2.9.tar.gz</span><br />
tar xzvf httpd-<span style="color:#800000;">2</span>.<span style="color:#800000;">2</span>.<span style="color:#800000;">9</span>.<span style="">tar</span>.<span style="">gz</span><br />
cd xzvf httpd-<span style="color:#800000;">2</span>.<span style="color:#800000;">2</span>.<span style="color:#800000;">9</span><br />
./configure --prefix=/usr/local/apache/httpd-<span style="color:#800000;">2</span>.<span style="color:#800000;">2</span>.<span style="color:#800000;">9</span><br />
make<br />
sudo make install</p>
<p>cd /usr/local/apache/<br />
sudo ln -s /usr/local/apache/httpd-<span style="color:#800000;">2</span>.<span style="color:#800000;">2</span>.<span style="color:#800000;">9</span> current</div>
</div>
</div>
<p></p>
<p>gd を利用するのに libpng がいるので port でインストール。</p>
<div class="syntax_hilite">
<div id="code-11">
<div class="code">sudo port install libpng</div>
</div>
</div>
<p></p>
<p>php の make でエラーになったので iconv.c を編集する</p>
<p>http://d.hatena.ne.jp/hetima/20071028/1193576377</p>
<div class="syntax_hilite">
<div id="code-12">
<div class="code">vi /usr/local/src/php-<span style="color:#800000;">5</span>.<span style="color:#800000;">3</span>.<span style="color:#800000;">1</span>/ext/iconv/iconv.<span style="">c</span><br />
iconv_open を libiconv_open に、<br />
iconv_close を libiconv_close に置換する。</div>
</div>
</div>
<p></p>
<p>php のインストール</p>
<div class="syntax_hilite">
<div id="code-13">
<div class="code">cd /usr/local/src<br />
wget http:<span style="color:#FF9933; font-style:italic;">//jp.php.net/get/php-5.3.1.tar.gz/from/this/mirror</span><br />
tar xzvf php-<span style="color:#800000;">5</span>.<span style="color:#800000;">3</span>.<span style="color:#800000;">1</span>.<span style="">tar</span>.<span style="">gz</span><br />
cd xzvf php-<span style="color:#800000;">5</span>.<span style="color:#800000;">3</span>.<span style="color:#800000;">1</span><br />
./configure --prefix=/usr/local/php/php-<span style="color:#800000;">5</span>.<span style="color:#800000;">3</span>.<span style="color:#800000;">1</span> --with-apxs2=/usr/local/apache/current/bin/apxs --with-pdo-mysql=/opt/local/lib/mysql5 --with-gd --with-zlib --with-xsl --enable-mbstring --with-png-dir=/usr/X11<br />
make</div>
</div>
</div>
<p></p>
<p>で、ここで行き詰まった。<br />
make で下記エラーが発生して、コンパイルできない。</p>
<div class="syntax_hilite">
<div id="code-14">
<div class="code">Undefined symbols:<br />
&nbsp; <span style="color:#CC0000;">"_iconv_close"</span>, referenced from:<br />
&nbsp; &nbsp; &nbsp; _do_convert in gdkanji.<span style="">o</span><br />
&nbsp; <span style="color:#CC0000;">"_iconv"</span>, referenced from:<br />
&nbsp; &nbsp; &nbsp; _do_convert in gdkanji.<span style="">o</span><br />
&nbsp; <span style="color:#CC0000;">"_iconv_open"</span>, referenced from:<br />
&nbsp; &nbsp; &nbsp; _do_convert in gdkanji.<span style="">o</span><br />
ld: symbol<span style="color:#006600; font-weight:bold;">&#40;</span>s<span style="color:#006600; font-weight:bold;">&#41;</span> not found<br />
collect2: ld returned <span style="color:#800000;">1</span> exit status<br />
make: *** <span style="color:#006600; font-weight:bold;">&#91;</span>libs/libphp5.<span style="">bundle</span><span style="color:#006600; font-weight:bold;">&#93;</span> Error <span style="color:#800000;">1</span></div>
</div>
</div>
<p></p>
<p>iconv が駄目そうなので --without-iconv オプションを付ける。ついでに freetype も入れる。</p>
<p>http://bugs.php.net/bug.php?id=49267</p>
<div class="syntax_hilite">
<div id="code-15">
<div class="code">./configure --prefix=/usr/local/php/php-<span style="color:#800000;">5</span>.<span style="color:#800000;">3</span>.<span style="color:#800000;">1</span> --with-apxs2=/usr/local/apache/current/bin/apxs --with-pdo-mysql=/opt/local/lib/mysql5 --with-gd --with-zlib --with-xsl --enable-mbstring --with-png-dir=/usr/X11 --without-iconv --with-freetype-dir=/usr/X11</div>
</div>
</div>
<p></p>
<p>これでなんとかコンパイルできた。<br />
試してないけど以下のような記事もあった。</p>
<p>http://d.hatena.ne.jp/brtRiver/20090911/1252703372</p>
<p>あと /usr/local/php/current/bin/php がないのでシンボリックリンクを張って作る</p>
<div class="syntax_hilite">
<div id="code-16">
<div class="code">sudo ln -s php.<span style="">dSYM</span> php</div>
</div>
</div>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://www.sylvan-l.net/b/2009/12/27/mac-10-6-2-%e3%81%b8%e3%81%ae-apache-2-2-9-%e3%81%a8-php-5-3-1-%e3%81%ae%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.sylvan-l.net/b/2009/12/27/mac-10-6-2-%e3%81%b8%e3%81%ae-apache-2-2-9-%e3%81%a8-php-5-3-1-%e3%81%ae%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab/" />
	</item>
		<item>
		<title>oracle+phpでもっとも参考にするべき資料</title>
		<link>http://www.sylvan-l.net/b/2009/04/15/oraclephp%e3%81%a7%e3%82%82%e3%81%a3%e3%81%a8%e3%82%82%e5%8f%82%e8%80%83%e3%81%ab%e3%81%99%e3%82%8b%e3%81%b9%e3%81%8d%e8%b3%87%e6%96%99/</link>
		<comments>http://www.sylvan-l.net/b/2009/04/15/oraclephp%e3%81%a7%e3%82%82%e3%81%a3%e3%81%a8%e3%82%82%e5%8f%82%e8%80%83%e3%81%ab%e3%81%99%e3%82%8b%e3%81%b9%e3%81%8d%e8%b3%87%e6%96%99/#comments</comments>
		<pubDate>Tue, 14 Apr 2009 15:54:53 +0000</pubDate>
		<dc:creator>sylvan</dc:creator>
				<category><![CDATA[データベース関連]]></category>
		<category><![CDATA[Web開発関連]]></category>
		<category><![CDATA[oci_pconnect]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[oracleclient]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.sylvan-l.net/b/?p=1984</guid>
		<description><![CDATA[やっぱり基本はオラクル本家のサイトでしょう。 PHP Developer CenterとかPHPとオラクルはオラクルで何か調べたりダウンロードしたりする時の基本中の基本 OTN 内のコンテンツ。 以下の PDF もいい。 「The Underground PHP and Oracle Manual Release 1.5」（PDF） ↓の本はオラクルで今まで一番よく読んだ本。 SEのためのOracleチューニングハンドブック posted with amazlet at 09.04.15 後藤 孝憲 名和 満 五嶋 和彦 井原 秀樹 ソフトバンククリエイティブ 売り上げランキング: 145781 おすすめ度の平均: 通勤電車で読めるOracle本 チューニングに悩んでいる方におすすめです 必読書です ＤＢエンジニア必見！ おすすめです。 Amazon.co.jp で詳細を見る]]></description>
			<content:encoded><![CDATA[<p>やっぱり基本はオラクル本家のサイトでしょう。</p>
<p><a href=" http://www.oracle.com/technology/global/jp/tech/php/index.html">PHP Developer Center</a>とか<a href="http://www.oracle.com/lang/jp/technologies/php/index.html">PHPとオラクル</a>はオラクルで何か調べたりダウンロードしたりする時の基本中の基本 OTN 内のコンテンツ。</p>
<p>以下の PDF もいい。<br />
<a href="http://www.oracle.com/technology/tech/php/pdf/underground-php-oracle-manual.pdf">「The Underground PHP and Oracle Manual Release 1.5」（PDF）</a></p>
<p>↓の本はオラクルで今まで一番よく読んだ本。</p>
<div style="margin: 30px 10pt 0pt 50px;">
<div class="amazlet-box" style="margin-bottom:0px;">
<div class="amazlet-image" style="float:left;"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4797323132/lsa00-22/ref=nosim/" name="amazletlink" target="_blank"><img src="http://ecx.images-amazon.com/images/I/41T94gR2REL._SL160_.jpg" alt="SEのためのOracleチューニングハンドブック" style="border: none;" /></a></div>
<div class="amazlet-info" style="float:left;margin-left:15px;line-height:120%">
<div class="amazlet-name" style="margin-bottom:10px;line-height:120%"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4797323132/lsa00-22/ref=nosim/" name="amazletlink" target="_blank">SEのためのOracleチューニングハンドブック</a>
<div class="amazlet-powered-date" style="font-size:7pt;margin-top:5px;font-family:verdana;line-height:120%">posted with <a href="http://www.amazlet.com/browse/ASIN/4797323132/lsa00-22/ref=nosim/" title="SEのためのOracleチューニングハンドブック" target="_blank">amazlet</a> at 09.04.15</div>
</div>
<div class="amazlet-detail">後藤 孝憲 名和 満 五嶋 和彦 井原 秀樹 <br />ソフトバンククリエイティブ <br />売り上げランキング: 145781</div>
<div class="amazlet-review" style="margin-top:10px; margin-bottom:10px">
<div class="amazlet-review-average" style="margin-bottom:5px">おすすめ度の平均: <img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-5-0.gif" alt="5.0" /></div>
<p><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-5-0.gif" alt="5" /> 通勤電車で読めるOracle本<br /><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-5-0.gif" alt="5" /> チューニングに悩んでいる方におすすめです<br /><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-5-0.gif" alt="5" /> 必読書です<br /><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-5-0.gif" alt="5" /> ＤＢエンジニア必見！<br /><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-5-0.gif" alt="5" /> おすすめです。</div>
<div class="amazlet-link" style="margin-top: 5px"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4797323132/lsa00-22/ref=nosim/" name="amazletlink" target="_blank">Amazon.co.jp で詳細を見る</a></div>
</div>
<div class="amazlet-footer" style="clear: left"></div>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.sylvan-l.net/b/2009/04/15/oraclephp%e3%81%a7%e3%82%82%e3%81%a3%e3%81%a8%e3%82%82%e5%8f%82%e8%80%83%e3%81%ab%e3%81%99%e3%82%8b%e3%81%b9%e3%81%8d%e8%b3%87%e6%96%99/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.sylvan-l.net/b/2009/04/15/oraclephp%e3%81%a7%e3%82%82%e3%81%a3%e3%81%a8%e3%82%82%e5%8f%82%e8%80%83%e3%81%ab%e3%81%99%e3%82%8b%e3%81%b9%e3%81%8d%e8%b3%87%e6%96%99/" />
	</item>
		<item>
		<title>sony vaio type g for php dev</title>
		<link>http://www.sylvan-l.net/b/2009/04/04/vaio-type-g-for-php-development/</link>
		<comments>http://www.sylvan-l.net/b/2009/04/04/vaio-type-g-for-php-development/#comments</comments>
		<pubDate>Sat, 04 Apr 2009 10:13:35 +0000</pubDate>
		<dc:creator>sylvan</dc:creator>
				<category><![CDATA[Web開発関連]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[install]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[setup]]></category>
		<category><![CDATA[sony]]></category>
		<category><![CDATA[vaio]]></category>
		<category><![CDATA[vmware]]></category>
		<category><![CDATA[xkeymacs]]></category>

		<guid isPermaLink="false">http://www.sylvan-l.net/b/?p=1885</guid>
		<description><![CDATA[新しいマシンがきたので、PHP を開発するために必要な設定を順にやっていきます。やることがけっこうあって、だいたい丸一日ぐらいつぶれます。前のマシンでは coLinux を使っていたのを今回は vmware を利用しようと思います。あと php でデバッグできる環境を作りたいと思います。（自宅の mac では実践済み。） フォルダオプション、画面、ツールバー、スタートオプションの変更 いつも通り好きになおす Apps ディレクトリ作成 自分でインストールするアプリケーションを保存するディレクトリを作成する xkeymacs http://www.cam.hi-ho.ne.jp/oishi/ から xkeymacs347.zip をダウンロード Ctrl キーと Caps Lock キーを入れ替え 設定をインポート firefox foxmarks Tab Mix Plus 0.3.7.3 FireGestures Greasemonkey AutoPagerize Firebug YSlow Live HTTP headers SwitchProxy Tool 1.4.1 (Html Validator) (Tamper Data 10.1.0) (Copy Plain Text) fenrir Ctrl + 8 を呼び出しキーに設定 [...]]]></description>
			<content:encoded><![CDATA[<p>新しいマシンがきたので、PHP を開発するために必要な設定を順にやっていきます。やることがけっこうあって、だいたい丸一日ぐらいつぶれます。前のマシンでは coLinux を使っていたのを今回は vmware を利用しようと思います。あと php でデバッグできる環境を作りたいと思います。（自宅の mac では実践済み。）</p>
<ol>
<li>フォルダオプション、画面、ツールバー、スタートオプションの変更
<ol>
<li>いつも通り好きになおす</li>
</ol>
</li>
<li>Apps ディレクトリ作成
<ol>
<li>自分でインストールするアプリケーションを保存するディレクトリを作成する</li>
</ol>
</li>
<li>xkeymacs
<ol>
<li><a href="http://www.cam.hi-ho.ne.jp/oishi/">http://www.cam.hi-ho.ne.jp/oishi/</a> から xkeymacs347.zip をダウンロード</li>
<li>Ctrl キーと Caps Lock キーを入れ替え</li>
<li>設定をインポート</li>
</ol>
</li>
<li>firefox
<ol>
<li>foxmarks</li>
<li>Tab Mix Plus 0.3.7.3</li>
<li>FireGestures</li>
<li>Greasemonkey
<ol>
<li>AutoPagerize</li>
</ol>
</li>
<li>Firebug
<ol>
<li>YSlow</li>
</ol>
</li>
<li>Live HTTP headers</li>
<li>SwitchProxy Tool 1.4.1</li>
<li>(Html Validator)</li>
<li>(Tamper Data 10.1.0)</li>
<li>(Copy Plain Text)</li>
</ol>
</li>
<li>fenrir
<ol>
<li>Ctrl + 8 を呼び出しキーに設定</li>
</ol>
</li>
<li>Process Explorer v11.33
<ol>
<li>スタートメニューに登録</li>
</ol>
</li>
<li>Thunderbird
<ol>
<li>Becky からデータインポート</li>
<li>http://cubic9.com/Windows/Mozilla%20Thunderbird/Becky2%A4%AB%A4%E9%A4%CE%B0%DC%B9%D4/%A5%E1%A1%BC%A5%EB%A5%C7%A1%BC%A5%BF/</li>
</ol>
</li>
<li>DropBox</li>
<li>辞書をインポート</li>
<li>Vmware Server 1.0.9
<ol>
<li>vmware server
<ol>
<li><a href="http://www.ideaxidea.com/archives/2009/03/development_tools.html">百式の人のブログ</a>の 2 系は使いにくいという情報を元に <a href="http://register.vmware.com/content/download-109.html">1 系</a>をインストール。たしかに前に 2 系をインストールしたら苦労した覚えが。。</li>
<li><a href="http://www.google.co.jp/search?hl=ja&amp;client=firefox-a&amp;rls=org.mozilla%3Aja%3Aofficial&amp;hs=qPk&amp;q=vmware+%83G%83%89%81[%94%AD%90%B6%81@%90V%8BK%83t%83@%83C%83%8B%83V%83X%83e%83%80%8D%EC%90%AC%82%CC%82%BD%82%DF%82%CC%97L%8C%F8%82%C8+ide&amp;btnG=%8C%9F%8D%F5&amp;lr=lang_ja">SISI だとエラーになったので IDE で</a>対応</li>
<li>ネットワークの設定は NAT で。<a href="http://labs.unoh.net/2006/11/vmwarecentos.html">http://labs.unoh.net/2006/11/vmwarecentos.html</a></li>
</ol>
</li>
<li>CentOS5
<ol>
<li>yum update</li>
<li>yum install screen</li>
<li>yum install zsh</li>
<li>chsh  ※/bin/zsh を指定</li>
<li>cd /usr/local/src/</li>
<li>yum install gcc</li>
<li>wget http://www.sqlite.org/sqlite-amalgamation-3.6.12.tar.gz</li>
<li>yum install zlib-devel</li>
<li>wget http://subversion.tigris.org/downloads/subversion-1.6.0.tar.gz</li>
<li>wget http://ftp.gnu.org/pub/gnu/emacs/emacs-22.3.tar.gz</li>
<li>yum install samba samba-swat</li>
<li>vi /etc/xinet.d/swat</li>
<li>/etc/init.d/xinetd start</li>
<li>/etc/init.d/smb start</li>
<li>http://vmware:901/</li>
<li>yum install httpd mysql-server</li>
<li>yum install php php-{mbstring,xml,mysql}</li>
<li></li>
<li></li>
</ol>
</li>
<li><a href="http://www.google.co.jp/search?hl=ja&amp;client=firefox-a&amp;rls=org.mozilla%3Aja%3Aofficial&amp;hs=qPk&amp;q=vmware+%83G%83%89%81[%94%AD%90%B6%81@%90V%8BK%83t%83@%83C%83%8B%83V%83X%83e%83%80%8D%EC%90%AC%82%CC%82%BD%82%DF%82%CC%97L%8C%F8%82%C8+ide&amp;btnG=%8C%9F%8D%F5&amp;lr=lang_ja"><br />
</a></li>
</ol>
</li>
<li>秀丸</li>
<li>cse</li>
<li>FileZilla Client</li>
<li>IpMsg、View</li>
<li>PuTTY ごった煮版</li>
<li>TortoiseSVN
<ol>
<li>Df.exe</li>
</ol>
</li>
<li><a href="http://www.sylvan-l.net/b/2005/02/06/excel%E3%81%AE%E8%AA%AD%E3%81%BF%E5%8F%96%E3%82%8A%E5%B0%82%E7%94%A8/">エクセル、パワポの読み取り専用メニュー</a></li>
<li><a href="http://www.oracle.com/technology/products/database/xe/index.html">Oracle</a>
<ol>
<li>Oracle Database 10g Express Edition (Universal)</li>
<li>Oracle Database 10g Express Client
<ol>
<li>sqlplus system/password@localhost/XE</li>
<li>\oraclexe\app\oracle\product\10.2.0\server\NETWORK\ADMIN\tnsnames.ora</li>
<li>フリーなのでインスタンスはひとつだけ。名前は XE。</li>
</ol>
</li>
</ol>
</li>
<li>RealVNC日本語インストール版 4.1.2</li>
<li>FinePrint 5</li>
<li></li>
</ol>
<p>(VGN-G2)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sylvan-l.net/b/2009/04/04/vaio-type-g-for-php-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.sylvan-l.net/b/2009/04/04/vaio-type-g-for-php-development/" />
	</item>
		<item>
		<title>symfony1.1以降で開発する際に必ず守ること箇条書き</title>
		<link>http://www.sylvan-l.net/b/2009/03/21/symfony11%e4%bb%a5%e9%99%8d%e3%81%a7%e9%96%8b%e7%99%ba%e3%81%99%e3%82%8b%e9%9a%9b%e3%81%ab%e5%bf%85%e3%81%9a%e5%ae%88%e3%82%8b%e3%81%93%e3%81%a8%e7%ae%87%e6%9d%a1%e6%9b%b8%e3%81%8d/</link>
		<comments>http://www.sylvan-l.net/b/2009/03/21/symfony11%e4%bb%a5%e9%99%8d%e3%81%a7%e9%96%8b%e7%99%ba%e3%81%99%e3%82%8b%e9%9a%9b%e3%81%ab%e5%bf%85%e3%81%9a%e5%ae%88%e3%82%8b%e3%81%93%e3%81%a8%e7%ae%87%e6%9d%a1%e6%9b%b8%e3%81%8d/#comments</comments>
		<pubDate>Fri, 20 Mar 2009 16:37:02 +0000</pubDate>
		<dc:creator>sylvan</dc:creator>
				<category><![CDATA[Web開発関連]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[symfony]]></category>
		<category><![CDATA[symfony1.1]]></category>

		<guid isPermaLink="false">http://www.sylvan-l.net/b/?p=1675</guid>
		<description><![CDATA[schema.yml カラム名には id、created_at、updated_at、created_by、updated_by を利用する join して利用するテーブルには外部制約を必ず設定、テーブル名_id を利用する database.yml、propel.ini の設定は symfony configure:database コマンドを使う 命名規則 変数、関数名は camelCase で app.yml の変数名は snake_case で コメントなしでもわかるような名前をつけて、わかりきったコメントは書かない コーディングルール type hinting を使う if、for、foreach、switch 文の括弧は symfony 形式で 比較文に ==、!= は絶対に使わない。===、!== を利用する。でも is_null とかはもっと使え 文字列を連結する時はピリオドと文字列の間に半角スペース。（例） $text = 'text1' . 'text2' . 'text3' php の定数は小文字で。（例）null、true、false など コード内のコメントなどに全角スペースを使わない 関数の return 値に空文字を使うなら null を使え 全体 SQL 文を直接書かない、頑張って [...]]]></description>
			<content:encoded><![CDATA[<ul>
<li>schema.yml
<ul>
<li>カラム名には id、created_at、updated_at、created_by、updated_by を利用する</li>
<li>join して利用するテーブルには外部制約を必ず設定、テーブル名_id を利用する</li>
<li>database.yml、propel.ini の設定は symfony configure:database コマンドを使う</li>
</ul>
</li>
<li>命名規則
<ul>
<li>変数、関数名は camelCase で</li>
<li>app.yml の変数名は snake_case で</li>
<li>コメントなしでもわかるような名前をつけて、わかりきったコメントは書かない</li>
</ul>
</li>
<li>コーディングルール
<ul>
<li>type hinting を使う</li>
<li>if、for、foreach、switch 文の括弧は symfony 形式で</li>
<li>比較文に ==、!= は絶対に使わない。===、!== を利用する。でも is_null とかはもっと使え</li>
<li>文字列を連結する時はピリオドと文字列の間に半角スペース。（例）
<div class="syntax_hilite">
<div id="code-19">
<div class="code">$text = <span style="color:#CC0000;">'text1'</span> . <span style="color:#CC0000;">'text2'</span> . <span style="color:#CC0000;">'text3'</span></div>
</div>
</div>
<p></li>
<li>php の定数は小文字で。（例）null、true、false など</li>
<li>コード内のコメントなどに全角スペースを使わない</li>
<li>関数の return 値に空文字を使うなら null を使え</li>
</ul>
</li>
<li>全体
<ul>
<li>SQL 文を直接書かない、頑張って criteria で書く</li>
<li>共通処理は親クラスを作成し、継承して利用する</li>
<li>クラスのプロパティは絶対に protected or private で</li>
<li>symfony の lib ディレクトリ以下を理解するとかなりレベルアップ</li>
</ul>
</li>
<li>サーバ
<ul>
<li>utf-8 で統一</li>
</ul>
</li>
<li>アクション
<ul>
<li>アクションにビジネスロジックを書かない</li>
<li>アクションに criteria を書かない</li>
</ul>
</li>
<li>モデル
<ul>
<li>lib/model/om、map、lib/form/base の下はさわらない</li>
<li>DB まわりのビジネスロジックは lib/model/xxxPeer.php に書く</li>
<li>レコード単位の処理は lib/model/xxx.php に書く</li>
<li>doSelectRS() で取得したレコードセットは populateObjects() を使ってオブジェクトに変換すると楽</li>
<li>doSelectRs() で取得したレコードセットが 2 箇所以上から利用される場合は、レコードセットに合わせたモデルを作成し利用する</li>
<li>DB の定数は xxxPeer.php に宣言</li>
<li>複数のモデルに共通の処理を挿入する場合は、sfPropelBehavior を利用する</li>
</ul>
</li>
<li>フォーム
<ul>
<li>Form クラスを必ず使う</li>
<li>Form まわりのビジネスロジックは lib/form/xxx に書く</li>
<li>親子関係のテーブルを Form で利用する時は embedForm を使う</li>
<li>input タグの name は xxx[xxx] の形式で書く。bind する時のロジックが短くなる。$this-&gt;widgetSchema-&gt;setNameFormat('xxx[%s]') を使う</li>
<li>sfUser を使いたい時は、sfContext::getInstance()-&gt;getUser() を利用する</li>
</ul>
</li>
<li>バリデーター
<ul>
<li>複数フィールドのバリデートには setPreValidator()、setPostValidator() を使う</li>
</ul>
</li>
<li>テンプレート
<ul>
<li>テンプレートには if、for などの簡単な条件分岐以外で php を利用しない</li>
<li>layout 内で動的に切り替わる要素を使いたい場合は slot を利用する</li>
<li>form を利用している時はテンプレートに関するロジックは form で、form を利用しない時は、viewXxx.class.php を作成しコンストラクタでオブジェクトを渡してロジックは view クラス内に閉じ込める</li>
</ul>
</li>
<li>routing.yml
<ul>
<li>get パラメーターのチェックは routing.yml で</li>
</ul>
</li>
<li>エラー
<ul>
<li>400、500、unavailable.php の 3 つが設定対象</li>
</ul>
</li>
<li>保留
<ul>
<li>（ある程度規模が大きくなると、lib/service/serviceXxx.class.php みたいな symfony  にできるだけ依存しないビジネスロジッククラスを作る案もありかも）</li>
</ul>
</li>
<li>ヘッダーコメント</li>
</ul>
<div class="syntax_hilite">
<div id="code-20">
<div class="code"><span style="color:#008000;">/**<br />
* 概要<br />
*<br />
* @package&nbsp; &nbsp; xxx<br />
* @subpackage xxx<br />
* @author&nbsp; &nbsp; &nbsp;mei sei<br />
* @copyright&nbsp; (c) 2009 company_name inc.<br />
* @version&nbsp; &nbsp; SVN: $Id$<br />
*/</span></div>
</div>
</div>
<p></p>
<p>↓↓↓は本屋で売ってる唯一の symfony 本。始めは買わなかったけど、結局買った本。ないよりは全然まし。</p>
<div style="margin: 30px 10pt 0pt 50px;">
<div class="amazlet-box" style="margin-bottom:0px;">
<div class="amazlet-image" style="float:left;"><a name="amazletlink" href="http://www.amazon.co.jp/exec/obidos/ASIN/4797343052/lsa00-22/ref=nosim/" target="_blank"><img style="border: none;" src="http://ecx.images-amazon.com/images/I/51wL5doVKJL._SL160_.jpg" alt="symfony徹底攻略 [PHP徹底攻略シリーズ] (PHP徹底攻略シリーズ)" /></a></div>
<div class="amazlet-info" style="float:left;margin-left:15px;line-height:120%">
<div class="amazlet-name" style="margin-bottom:10px;line-height:120%"><a name="amazletlink" href="http://www.amazon.co.jp/exec/obidos/ASIN/4797343052/lsa00-22/ref=nosim/" target="_blank">symfony徹底攻略 [PHP徹底攻略シリーズ] (PHP徹底攻略シリーズ)</a></p>
<div class="amazlet-powered-date" style="font-size:7pt;margin-top:5px;font-family:verdana;line-height:120%">posted with <a title="symfony徹底攻略 [PHP徹底攻略シリーズ] (PHP徹底攻略シリーズ)" href="http://www.amazlet.com/browse/ASIN/4797343052/lsa00-22/ref=nosim/" target="_blank">amazlet</a> at 09.03.21</div>
</div>
<div class="amazlet-detail">前田 雅央</p>
<p>ソフトバンククリエイティブ</p>
<p>売り上げランキング: 208898</p></div>
<div class="amazlet-review" style="margin-top:10px; margin-bottom:10px">
<div class="amazlet-review-average" style="margin-bottom:5px">おすすめ度の平均: <img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-2-0.gif" alt="2.0" /></div>
<p><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-2-0.gif" alt="2" /> Symfony1.2には未対応</p>
<p><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-4-0.gif" alt="4" /> 2冊目に買うべき本</p>
<p><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-1-0.gif" alt="1" /> この本は酷い</p>
<p><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-1-0.gif" alt="1" /> 誤植が・・・</div>
<div class="amazlet-link" style="margin-top: 5px"><a name="amazletlink" href="http://www.amazon.co.jp/exec/obidos/ASIN/4797343052/lsa00-22/ref=nosim/" target="_blank">Amazon.co.jp で詳細を見る</a></div>
</div>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.sylvan-l.net/b/2009/03/21/symfony11%e4%bb%a5%e9%99%8d%e3%81%a7%e9%96%8b%e7%99%ba%e3%81%99%e3%82%8b%e9%9a%9b%e3%81%ab%e5%bf%85%e3%81%9a%e5%ae%88%e3%82%8b%e3%81%93%e3%81%a8%e7%ae%87%e6%9d%a1%e6%9b%b8%e3%81%8d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.sylvan-l.net/b/2009/03/21/symfony11%e4%bb%a5%e9%99%8d%e3%81%a7%e9%96%8b%e7%99%ba%e3%81%99%e3%82%8b%e9%9a%9b%e3%81%ab%e5%bf%85%e3%81%9a%e5%ae%88%e3%82%8b%e3%81%93%e3%81%a8%e7%ae%87%e6%9d%a1%e6%9b%b8%e3%81%8d/" />
	</item>
		<item>
		<title>動作するjobeetサイト</title>
		<link>http://www.sylvan-l.net/b/2009/03/19/%e5%8b%95%e4%bd%9c%e3%81%99%e3%82%8bjobeet%e3%82%b5%e3%82%a4%e3%83%88/</link>
		<comments>http://www.sylvan-l.net/b/2009/03/19/%e5%8b%95%e4%bd%9c%e3%81%99%e3%82%8bjobeet%e3%82%b5%e3%82%a4%e3%83%88/#comments</comments>
		<pubDate>Wed, 18 Mar 2009 16:07:31 +0000</pubDate>
		<dc:creator>sylvan</dc:creator>
				<category><![CDATA[Web開発関連]]></category>
		<category><![CDATA[jobeet]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[symfony]]></category>

		<guid isPermaLink="false">http://www.sylvan-l.net/b/?p=1639</guid>
		<description><![CDATA[今まで jobeet の svn はあったけれど動作するサイトがないなあと思っていたら見つけました。ちょっとさわると、jobeet には symfony を使ったプレビュー画面がありました。いろいろ方法はあるけどこれという決定打がないのでプレビューの参考になるかもしれません。 http://www.jobeet.org/en/]]></description>
			<content:encoded><![CDATA[<p>今まで jobeet の svn はあったけれど動作するサイトがないなあと思っていたら見つけました。ちょっとさわると、jobeet には symfony を使ったプレビュー画面がありました。いろいろ方法はあるけどこれという決定打がないのでプレビューの参考になるかもしれません。</p>
<p><a href="http://www.jobeet.org/en/">http://www.jobeet.org/en/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.sylvan-l.net/b/2009/03/19/%e5%8b%95%e4%bd%9c%e3%81%99%e3%82%8bjobeet%e3%82%b5%e3%82%a4%e3%83%88/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.sylvan-l.net/b/2009/03/19/%e5%8b%95%e4%bd%9c%e3%81%99%e3%82%8bjobeet%e3%82%b5%e3%82%a4%e3%83%88/" />
	</item>
		<item>
		<title>symfonyでsqlを節約</title>
		<link>http://www.sylvan-l.net/b/2009/02/25/symfony%e3%81%a7sql%e3%82%92%e7%af%80%e7%b4%84/</link>
		<comments>http://www.sylvan-l.net/b/2009/02/25/symfony%e3%81%a7sql%e3%82%92%e7%af%80%e7%b4%84/#comments</comments>
		<pubDate>Tue, 24 Feb 2009 15:30:47 +0000</pubDate>
		<dc:creator>sylvan</dc:creator>
				<category><![CDATA[Web開発関連]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[symfony]]></category>

		<guid isPermaLink="false">http://www.sylvan-l.net/b/?p=1385</guid>
		<description><![CDATA[doSelectJoinXXX() っていう関数を使うと 2 つのテーブルを join した結果を SQL 1 本で取得できる。 この関数は schema.yml で外部参照を設定すると自動で生成される。 第18章 - パフォーマンス データベースへの必要なクエリの回数は11回ではなく1回なので速くなります。 // アクション内で $this-&#38;gt;articles = ArticlePeer::doSelectJoinAuthor&#40;new Criteria&#40;&#41;&#41;; // doSelectJoinAuthor()によって発行されたデータベースへのクエリ SELECT article.id, article.title, article.author_id, ... author.id, author.name, ... FROM&#160; &#160;article, author WHERE&#160; article.author_id = author.id // テンプレートにおいて(変わらず) &#60;ul&#62; &#160; &#160; &#60;li&#62;getTitle&#40;&#41; ?&#38;gt;, written by getAuthor&#40;&#41;-&#38;gt;getName&#40;&#41; ?&#38;gt;&#60;/li&#62; &#60;/ul&#62;]]></description>
			<content:encoded><![CDATA[<h2><strong>doSelectJoinXXX()</strong></h2>
<p> っていう関数を使うと 2 つのテーブルを join した結果を SQL 1 本で取得できる。<br />
この関数は schema.yml で外部参照を設定すると自動で生成される。</p>
<p><a href=" http://symfony.xrea.jp/1.1/book/18-Performance.html#minimizing.the.number.of.queries.with.joins">第18章 - パフォーマンス</a><br />
<span id="more-1385"></span></p>
<blockquote><p>データベースへの必要なクエリの回数は11回ではなく1回なので速くなります。</p></blockquote>
<div class="syntax_hilite">
<div id="code-22">
<div class="code"><span style="color:#FF9933; font-style:italic;">// アクション内で</span><br />
$this-&amp;gt;articles = ArticlePeer::<span style="">doSelectJoinAuthor</span><span style="color:#006600; font-weight:bold;">&#40;</span>new Criteria<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006600; font-weight:bold;">&#41;</span><span style="color:#006600; font-weight:bold;">&#41;</span>;</p>
<p><span style="color:#FF9933; font-style:italic;">// doSelectJoinAuthor()によって発行されたデータベースへのクエリ</span><br />
SELECT article.<span style="">id</span>, article.<span style="">title</span>, article.<span style="">author_id</span>, ...<br />
<span style="">author</span>.<span style="">id</span>, author.<span style="">name</span>, ...<br />
<span style="">FROM</span>&nbsp; &nbsp;article, author<br />
WHERE&nbsp; article.<span style="">author_id</span> = author.<span style="">id</span></p>
<p><span style="color:#FF9933; font-style:italic;">// テンプレートにおいて(変わらず)</span><br />
&lt;ul&gt;<br />
&nbsp; &nbsp; &lt;li&gt;getTitle<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006600; font-weight:bold;">&#41;</span> ?&amp;gt;,<br />
written by getAuthor<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006600; font-weight:bold;">&#41;</span>-&amp;gt;getName<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006600; font-weight:bold;">&#41;</span> ?&amp;gt;&lt;/li&gt;<br />
&lt;/ul&gt;</div>
</div>
</div>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://www.sylvan-l.net/b/2009/02/25/symfony%e3%81%a7sql%e3%82%92%e7%af%80%e7%b4%84/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.sylvan-l.net/b/2009/02/25/symfony%e3%81%a7sql%e3%82%92%e7%af%80%e7%b4%84/" />
	</item>
		<item>
		<title>symfonyでセッションを利用するときにやっといたほうがいいこと</title>
		<link>http://www.sylvan-l.net/b/2009/02/24/symfony%e3%81%a7%e3%82%bb%e3%83%83%e3%82%b7%e3%83%a7%e3%83%b3%e3%82%92%e5%88%a9%e7%94%a8%e3%81%99%e3%82%8b%e3%81%a8%e3%81%8d%e3%81%ab%e3%82%84%e3%81%a3%e3%81%a8%e3%81%84%e3%81%9f%e3%81%bb%e3%81%86/</link>
		<comments>http://www.sylvan-l.net/b/2009/02/24/symfony%e3%81%a7%e3%82%bb%e3%83%83%e3%82%b7%e3%83%a7%e3%83%b3%e3%82%92%e5%88%a9%e7%94%a8%e3%81%99%e3%82%8b%e3%81%a8%e3%81%8d%e3%81%ab%e3%82%84%e3%81%a3%e3%81%a8%e3%81%84%e3%81%9f%e3%81%bb%e3%81%86/#comments</comments>
		<pubDate>Tue, 24 Feb 2009 14:51:22 +0000</pubDate>
		<dc:creator>sylvan</dc:creator>
				<category><![CDATA[Web開発関連]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[session]]></category>
		<category><![CDATA[symfony]]></category>

		<guid isPermaLink="false">http://www.sylvan-l.net/b/?p=1379</guid>
		<description><![CDATA[ひとつは、セッション名の変更。 # apps/frontend/config/factories.yml all: &#160; storage: &#160; &#160; class: sfSessionStorage &#160; &#160; param: &#160; &#160; &#160; session_name: my_cookie_name もう一つは有効期限の設定。 # apps/frontend/config/settings.yml all: &#160; user: &#160; &#160; class:&#160; &#160; &#160; &#160;myUser &#160; &#160; param: &#160; &#160; &#160; timeout:&#160; &#160;1800&#160; &#160; &#160; &#160; &#160; &#160;# 秒単位のセッションの寿命 第6章 - コントローラレイヤーの内側 php のセキュリティをざっと理解するには↓↓ 入門PHPセキュリティ posted with amazlet at 09.02.24 [...]]]></description>
			<content:encoded><![CDATA[<p>ひとつは、セッション名の変更。</p>
<div class="syntax_hilite">
<div id="code-25">
<div class="code"># apps/frontend/config/factories.<span style="">yml</span><br />
all:<br />
&nbsp; storage:<br />
&nbsp; &nbsp; class: sfSessionStorage<br />
&nbsp; &nbsp; param:<br />
&nbsp; &nbsp; &nbsp; session_name: my_cookie_name</div>
</div>
</div>
<p></p>
<p>もう一つは有効期限の設定。</p>
<div class="syntax_hilite">
<div id="code-26">
<div class="code"># apps/frontend/config/settings.<span style="">yml</span><br />
all:<br />
&nbsp; user:<br />
&nbsp; &nbsp; class:&nbsp; &nbsp; &nbsp; &nbsp;myUser<br />
&nbsp; &nbsp; param:<br />
&nbsp; &nbsp; &nbsp; timeout:&nbsp; &nbsp;<span style="color:#800000;">1800</span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# 秒単位のセッションの寿命</div>
</div>
</div>
<p></p>
<p><a href=" http://symfony.xrea.jp/1.1/book/06-Inside-the-Controller-Layer.html#session.management">第6章 - コントローラレイヤーの内側</a></p>
<p>php のセキュリティをざっと理解するには↓↓</p>
<div style="margin: 30px 10pt 0pt 50px;">
<div class="amazlet-box" style="margin-bottom:0px;">
<div class="amazlet-image" style="float:left;"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4873112869/lsa00-22/ref=nosim/" name="amazletlink" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51RJAQEBVML._SL160_.jpg" alt="入門PHPセキュリティ" style="border: none;" /></a></div>
<div class="amazlet-info" style="float:left;margin-left:15px;line-height:120%">
<div class="amazlet-name" style="margin-bottom:10px;line-height:120%"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4873112869/lsa00-22/ref=nosim/" name="amazletlink" target="_blank">入門PHPセキュリティ</a>
<div class="amazlet-powered-date" style="font-size:7pt;margin-top:5px;font-family:verdana;line-height:120%">posted with <a href="http://www.amazlet.com/browse/ASIN/4873112869/lsa00-22/ref=nosim/" title="入門PHPセキュリティ" target="_blank">amazlet</a> at 09.02.24</div>
</div>
<div class="amazlet-detail">クリス シフレット <br />オライリージャパン <br />売り上げランキング: 40453</div>
<div class="amazlet-review" style="margin-top:10px; margin-bottom:10px">
<div class="amazlet-review-average" style="margin-bottom:5px">おすすめ度の平均: <img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-4-0.gif" alt="4.0" /></div>
<p><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-4-0.gif" alt="4" /> 薄くて充実</div>
<div class="amazlet-link" style="margin-top: 5px"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4873112869/lsa00-22/ref=nosim/" name="amazletlink" target="_blank">Amazon.co.jp で詳細を見る</a></div>
</div>
<div class="amazlet-footer" style="clear: left"></div>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.sylvan-l.net/b/2009/02/24/symfony%e3%81%a7%e3%82%bb%e3%83%83%e3%82%b7%e3%83%a7%e3%83%b3%e3%82%92%e5%88%a9%e7%94%a8%e3%81%99%e3%82%8b%e3%81%a8%e3%81%8d%e3%81%ab%e3%82%84%e3%81%a3%e3%81%a8%e3%81%84%e3%81%9f%e3%81%bb%e3%81%86/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.sylvan-l.net/b/2009/02/24/symfony%e3%81%a7%e3%82%bb%e3%83%83%e3%82%b7%e3%83%a7%e3%83%b3%e3%82%92%e5%88%a9%e7%94%a8%e3%81%99%e3%82%8b%e3%81%a8%e3%81%8d%e3%81%ab%e3%82%84%e3%81%a3%e3%81%a8%e3%81%84%e3%81%9f%e3%81%bb%e3%81%86/" />
	</item>
		<item>
		<title>symfony1.1でフロントと管理ツールの公開ディレクトリを切り替える方法</title>
		<link>http://www.sylvan-l.net/b/2009/02/24/symfony11%e3%81%a7%e3%83%95%e3%83%ad%e3%83%b3%e3%83%88%e3%81%a8%e7%ae%a1%e7%90%86%e3%83%84%e3%83%bc%e3%83%ab%e3%81%ae%e5%85%ac%e9%96%8b%e3%83%87%e3%82%a3%e3%83%ac%e3%82%af%e3%83%88%e3%83%aa%e3%82%92/</link>
		<comments>http://www.sylvan-l.net/b/2009/02/24/symfony11%e3%81%a7%e3%83%95%e3%83%ad%e3%83%b3%e3%83%88%e3%81%a8%e7%ae%a1%e7%90%86%e3%83%84%e3%83%bc%e3%83%ab%e3%81%ae%e5%85%ac%e9%96%8b%e3%83%87%e3%82%a3%e3%83%ac%e3%82%af%e3%83%88%e3%83%aa%e3%82%92/#comments</comments>
		<pubDate>Tue, 24 Feb 2009 14:30:24 +0000</pubDate>
		<dc:creator>sylvan</dc:creator>
				<category><![CDATA[Web開発関連]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[symfony]]></category>
		<category><![CDATA[symfony1.1]]></category>

		<guid isPermaLink="false">http://www.sylvan-l.net/b/?p=1368</guid>
		<description><![CDATA[symfony の web ディレクトリはフロントとバックヤードで共通になってしまう。気持ち悪いので、切り替える方法を考えてみた。 まず以下のように backend ディレクトリを作成する。中身は web ディレクトリをそのままコピーする。 apps/ cache/ config/ data/ doc/ lib/ log/ plugins/ test/ web/ backend/ ← バックヤード用の公開ディレクトリを作成 次に、以下のように config/ProjectConfiguration.class.php の setup メソッドで公開ディレクトリを変更する。 # config/ProjectConfiguration.class.php &#160; &#160; &#91;php&#93; &#160; &#160; class ProjectConfiguration extends sfProjectConfiguration &#160; &#160; &#123; &#160; &#160; &#160; &#160;public function setup&#40;&#41; &#160; &#160; &#160; &#160;&#123; &#160; &#160; &#160; &#160; [...]]]></description>
			<content:encoded><![CDATA[<p>symfony の web ディレクトリはフロントとバックヤードで共通になってしまう。気持ち悪いので、切り替える方法を考えてみた。</p>
<p>まず以下のように backend ディレクトリを作成する。中身は web ディレクトリをそのままコピーする。</p>
<pre><code>
apps/
cache/
config/
data/
doc/
lib/
log/
plugins/
test/
web/
backend/  ← バックヤード用の公開ディレクトリを作成
</code></pre>
<p>次に、以下のように config/ProjectConfiguration.class.php の setup メソッドで公開ディレクトリを変更する。</p>
<div class="syntax_hilite">
<div id="code-28">
<div class="code"># config/ProjectConfiguration.<span style="">class</span>.<span style="">php</span><br />
&nbsp; &nbsp; <span style="color:#006600; font-weight:bold;">&#91;</span>php<span style="color:#006600; font-weight:bold;">&#93;</span><br />
&nbsp; &nbsp; class ProjectConfiguration extends sfProjectConfiguration<br />
&nbsp; &nbsp; <span style="color:#006600; font-weight:bold;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;public function setup<span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006600; font-weight:bold;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;<span style="color:#006600; font-weight:bold;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;$this-&gt;<span style="">setWebDir</span><span style="color:#006600; font-weight:bold;">&#40;</span>$this-&gt;<span style="">getRootDir</span><span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006600; font-weight:bold;">&#41;</span>.<span style="color:#CC0000;">'/backend'</span><span style="color:#006600; font-weight:bold;">&#41;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp;<span style="color:#006600; font-weight:bold;">&#125;</span><br />
&nbsp; &nbsp; <span style="color:#006600; font-weight:bold;">&#125;</span></div>
</div>
</div>
<p></p>
<p>あとはドキュメントルートを backend に設定すれば、フロントとバックで別ディレクトリを利用できるはず。でも結局ドキュメントルートを切り替える必要がある。。</p>
<div style="margin: 30px 10pt 0pt 50px;">
<div class="amazlet-box" style="margin-bottom:0px;">
<div class="amazlet-image" style="float:left;"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4774132373/lsa00-22/ref=nosim/" name="amazletlink" target="_blank"><img src="http://ecx.images-amazon.com/images/I/41gbS%2BvOscL._SL160_.jpg" alt="symfony×PHP [LLフレームワークBooks] (LLフレームワークBOOKS # 3)" style="border: none;" /></a></div>
<div class="amazlet-info" style="float:left;margin-left:15px;line-height:120%">
<div class="amazlet-name" style="margin-bottom:10px;line-height:120%"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4774132373/lsa00-22/ref=nosim/" name="amazletlink" target="_blank">symfony×PHP [LLフレームワークBooks] (LLフレームワークBOOKS # 3)</a>
<div class="amazlet-powered-date" style="font-size:7pt;margin-top:5px;font-family:verdana;line-height:120%">posted with <a href="http://www.amazlet.com/browse/ASIN/4774132373/lsa00-22/ref=nosim/" title="symfony×PHP [LLフレームワークBooks] (LLフレームワークBOOKS # 3)" target="_blank">amazlet</a> at 09.02.24</div>
</div>
<div class="amazlet-detail">森川 穣 亀本 大地 田中 正裕 <br />技術評論社 <br />売り上げランキング: 62157</div>
<div class="amazlet-review" style="margin-top:10px; margin-bottom:10px">
<div class="amazlet-review-average" style="margin-bottom:5px">おすすめ度の平均: <img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-3-0.gif" alt="3.0" /></div>
<p><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-1-0.gif" alt="1" /> 情報弱者向けの本<br /><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-5-0.gif" alt="5" /> エッセンスがよくまとまっている</div>
<div class="amazlet-link" style="margin-top: 5px"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4774132373/lsa00-22/ref=nosim/" name="amazletlink" target="_blank">Amazon.co.jp で詳細を見る</a></div>
</div>
<div class="amazlet-footer" style="clear: left"></div>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.sylvan-l.net/b/2009/02/24/symfony11%e3%81%a7%e3%83%95%e3%83%ad%e3%83%b3%e3%83%88%e3%81%a8%e7%ae%a1%e7%90%86%e3%83%84%e3%83%bc%e3%83%ab%e3%81%ae%e5%85%ac%e9%96%8b%e3%83%87%e3%82%a3%e3%83%ac%e3%82%af%e3%83%88%e3%83%aa%e3%82%92/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.sylvan-l.net/b/2009/02/24/symfony11%e3%81%a7%e3%83%95%e3%83%ad%e3%83%b3%e3%83%88%e3%81%a8%e7%ae%a1%e7%90%86%e3%83%84%e3%83%bc%e3%83%ab%e3%81%ae%e5%85%ac%e9%96%8b%e3%83%87%e3%82%a3%e3%83%ac%e3%82%af%e3%83%88%e3%83%aa%e3%82%92/" />
	</item>
		<item>
		<title>symfony1.1+oracle用のパッチファイル</title>
		<link>http://www.sylvan-l.net/b/2009/02/19/symfony11oracle%e7%94%a8%e3%81%ae%e3%83%91%e3%83%83%e3%83%81%e3%83%95%e3%82%a1%e3%82%a4%e3%83%ab/</link>
		<comments>http://www.sylvan-l.net/b/2009/02/19/symfony11oracle%e7%94%a8%e3%81%ae%e3%83%91%e3%83%83%e3%83%81%e3%83%95%e3%82%a1%e3%82%a4%e3%83%ab/#comments</comments>
		<pubDate>Wed, 18 Feb 2009 15:19:05 +0000</pubDate>
		<dc:creator>sylvan</dc:creator>
				<category><![CDATA[Web開発関連]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[symfony]]></category>
		<category><![CDATA[symfony1.1]]></category>

		<guid isPermaLink="false">http://www.sylvan-l.net/b/?p=1358</guid>
		<description><![CDATA[symfony1.1 + oracle で propel:build-all を実行すると、propel:insert-sql でエラーが発生する。原因は、生成された SQL 内（data/sql/lib.model.schema.sql）のコメントがオラクルのコメントになっていないことと、テーブル名とカラム名がダブルコーテーションで囲まれていることです。 毎回 sql を修正しているわけにもいかないのでパッチを作って対応しました。 これで propel:build-all-load frontend みたいなコマンドもするっと実行できます。 symfony徹底攻略 [PHP徹底攻略シリーズ] (PHP徹底攻略シリーズ) posted with amazlet at 09.02.19 前田 雅央 ソフトバンククリエイティブ 売り上げランキング: 166284 おすすめ度の平均: 2冊目に買うべき本 この本は酷い 誤植が・・・ Amazon.co.jp で詳細を見る]]></description>
			<content:encoded><![CDATA[<p>symfony1.1 + oracle で propel:build-all を実行すると、propel:insert-sql でエラーが発生する。原因は、生成された SQL 内（data/sql/lib.model.schema.sql）のコメントがオラクルのコメントになっていないことと、テーブル名とカラム名がダブルコーテーションで囲まれていることです。</p>
<p>毎回 sql を修正しているわけにもいかないのでパッチを作って対応しました。<br />
これで propel:build-all-load frontend みたいなコマンドもするっと実行できます。</p>
<div style="margin: 30px 10pt 0pt 50px;">
<div class="amazlet-box" style="margin-bottom:0px;">
<div class="amazlet-image" style="float:left;"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4797343052/lsa00-22/ref=nosim/" name="amazletlink" target="_blank"><img src="http://ecx.images-amazon.com/images/I/51wL5doVKJL._SL160_.jpg" alt="symfony徹底攻略 [PHP徹底攻略シリーズ] (PHP徹底攻略シリーズ)" style="border: none;" /></a></div>
<div class="amazlet-info" style="float:left;margin-left:15px;line-height:120%">
<div class="amazlet-name" style="margin-bottom:10px;line-height:120%"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4797343052/lsa00-22/ref=nosim/" name="amazletlink" target="_blank">symfony徹底攻略 [PHP徹底攻略シリーズ] (PHP徹底攻略シリーズ)</a>
<div class="amazlet-powered-date" style="font-size:7pt;margin-top:5px;font-family:verdana;line-height:120%">posted with <a href="http://www.amazlet.com/browse/ASIN/4797343052/lsa00-22/ref=nosim/" title="symfony徹底攻略 [PHP徹底攻略シリーズ] (PHP徹底攻略シリーズ)" target="_blank">amazlet</a> at 09.02.19</div>
</div>
<div class="amazlet-detail">前田 雅央 <br />ソフトバンククリエイティブ <br />売り上げランキング: 166284</div>
<div class="amazlet-review" style="margin-top:10px; margin-bottom:10px">
<div class="amazlet-review-average" style="margin-bottom:5px">おすすめ度の平均: <img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-2-0.gif" alt="2.0" /></div>
<p><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-4-0.gif" alt="4" /> 2冊目に買うべき本<br /><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-1-0.gif" alt="1" /> この本は酷い<br /><img src="http://images-jp.amazon.com/images/G/09/x-locale/common/customer-reviews/stars-1-0.gif" alt="1" /> 誤植が・・・</div>
<div class="amazlet-link" style="margin-top: 5px"><a href="http://www.amazon.co.jp/exec/obidos/ASIN/4797343052/lsa00-22/ref=nosim/" name="amazletlink" target="_blank">Amazon.co.jp で詳細を見る</a></div>
</div>
<div class="amazlet-footer" style="clear: left"></div>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.sylvan-l.net/b/2009/02/19/symfony11oracle%e7%94%a8%e3%81%ae%e3%83%91%e3%83%83%e3%83%81%e3%83%95%e3%82%a1%e3%82%a4%e3%83%ab/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.sylvan-l.net/b/2009/02/19/symfony11oracle%e7%94%a8%e3%81%ae%e3%83%91%e3%83%83%e3%83%81%e3%83%95%e3%82%a1%e3%82%a4%e3%83%ab/" />
	</item>
		<item>
		<title>環境変数の NLS_LANG の使い方</title>
		<link>http://www.sylvan-l.net/b/2009/02/13/%e7%92%b0%e5%a2%83%e5%a4%89%e6%95%b0%e3%81%ae-nls_lang-%e3%81%ae%e4%bd%bf%e3%81%84%e6%96%b9/</link>
		<comments>http://www.sylvan-l.net/b/2009/02/13/%e7%92%b0%e5%a2%83%e5%a4%89%e6%95%b0%e3%81%ae-nls_lang-%e3%81%ae%e4%bd%bf%e3%81%84%e6%96%b9/#comments</comments>
		<pubDate>Thu, 12 Feb 2009 16:16:52 +0000</pubDate>
		<dc:creator>sylvan</dc:creator>
				<category><![CDATA[データベース関連]]></category>
		<category><![CDATA[nls_lang]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.sylvan-l.net/b/?p=1345</guid>
		<description><![CDATA[環境変数の NLS_LANG って今までよくわかってなかった。 今日はまってやっと理解したのが、NLS_LANG はオラクルクライアント側の文字コードを指定するものだということ。オラクルはデータベースの文字コードと NLS_LANG を比較して異なる場合は、データベースにデータを格納する際にデータベースの文字コードに変換して格納するという機能がある。今回 NLS_LANG を間違ってデータベース側の文字コードを設定していたので、文字コード変換がされず不具合になっていた。 PHPfestチュートリアル：Oracle Database 10g Express EditionおよびZend Core for Oracle Oracleデータベースは指定された文字セットで作成されます。 PHPでは、NLS_LANG環境変数を設定することで独自の文字セットを選択できます。 Oracleクライアント（PHP）のグローバリゼーション設定では、ロケールのための適切なデータ形式、Oracleのエラー・メッセージに使用される言語、言語のソートの順番などのデフォルト値を指定できます。 NLS_LANGは、Webサーバーを起動する環境で設定する必要があります。]]></description>
			<content:encoded><![CDATA[<p>環境変数の NLS_LANG って今までよくわかってなかった。</p>
<p>今日はまってやっと理解したのが、NLS_LANG はオラクルクライアント側の文字コードを指定するものだということ。オラクルはデータベースの文字コードと NLS_LANG を比較して異なる場合は、データベースにデータを格納する際にデータベースの文字コードに変換して格納するという機能がある。今回 NLS_LANG を間違ってデータベース側の文字コードを設定していたので、文字コード変換がされず不具合になっていた。</p>
<p><a href="http://www.oracle.com/technology/global/jp/tech/php/htdocs/php-oracle-tutorial.html">PHPfestチュートリアル：Oracle Database 10g Express EditionおよびZend Core for Oracle</a></p>
<blockquote><p>Oracleデータベースは指定された文字セットで作成されます。 PHPでは、NLS_LANG環境変数を設定することで独自の文字セットを選択できます。 Oracleクライアント（PHP）のグローバリゼーション設定では、ロケールのための適切なデータ形式、Oracleのエラー・メッセージに使用される言語、言語のソートの順番などのデフォルト値を指定できます。 NLS_LANGは、Webサーバーを起動する環境で設定する必要があります。</p></blockquote>
<p><iframe src="http://rcm-jp.amazon.co.jp/e/cm?t=lsa00-22&#038;o=9&#038;p=8&#038;l=as1&#038;asins=4798115169&#038;md=1X69VDGQCMF7Z30FM082&#038;fc1=000000&#038;IS2=1&#038;lt1=_blank&#038;m=amazon&#038;lc1=0000FF&#038;bc1=FFFFFF&#038;bg1=FFFFFF&#038;f=ifr" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"></iframe></p>
]]></content:encoded>
			<wfw:commentRss>http://www.sylvan-l.net/b/2009/02/13/%e7%92%b0%e5%a2%83%e5%a4%89%e6%95%b0%e3%81%ae-nls_lang-%e3%81%ae%e4%bd%bf%e3%81%84%e6%96%b9/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://www.sylvan-l.net/b/2009/02/13/%e7%92%b0%e5%a2%83%e5%a4%89%e6%95%b0%e3%81%ae-nls_lang-%e3%81%ae%e4%bd%bf%e3%81%84%e6%96%b9/" />
	</item>
	</channel>
</rss>

