<?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:georss="http://www.georss.org/georss" 	xmlns:xhtml="http://www.w3.org/1999/xhtml"
>

<channel>
	<title>kichon&#039;s blog</title>
	<atom:link href="http://kichon.net/blog/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://kichon.net/blog</link>
	<description>~ Faint daily life</description>
	<lastBuildDate>Fri, 23 Sep 2011 11:32:14 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<image>
  <link>http://kichon.net/blog</link>
  <url>http://kichon.net/blog/wp-content/favicon/bakeneko.png</url>
  <title>kichon&#039;s blog</title>
</image>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://kichon.net/blog/" />
		<item>
		<title>【php】PDOのドキュメント</title>
		<link>http://kichon.net/blog/?p=1961</link>
		<comments>http://kichon.net/blog/?p=1961#comments</comments>
		<pubDate>Fri, 23 Sep 2011 11:31:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://kichon.net/blog/?p=1961</guid>
		<description><![CDATA[
きちんと読んだ事が無かったのでこの機会に読みました。
PHPのマニュアルの中にあります。

・PHP Data Objects

Doctrineの内部はPDOを使っているので読んでおいて損はないかと思います。
CakePHPでも使ってるのかな。（たぶん）

特に目新しいことはありませんが、ある事柄を拾得する際に一度はマニュアルを読むという習慣を
きちんとつけた方がよいですね。と最近は自分に言い聞かせています。
]]></description>
		<wfw:commentRss>http://kichon.net/blog/?feed=rss2&amp;p=1961</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://kichon.net/blog/?p=1961" />
	</item>
		<item>
		<title>【php】【symfony】【doctrine】各種マニュアルを読んでみる(6日目)</title>
		<link>http://kichon.net/blog/?p=1959</link>
		<comments>http://kichon.net/blog/?p=1959#comments</comments>
		<pubDate>Wed, 14 Sep 2011 00:35:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ORM]]></category>
		<category><![CDATA[doctrine]]></category>

		<guid isPermaLink="false">http://kichon.net/blog/?p=1959</guid>
		<description><![CDATA[
ちょっと期間が空きましたが時間を見つけて読んでおります。

■進捗状況
・PHP：特になし
・symfony：特になし
・Doctrine：Data Validation

Doctrineに悩まされる日々が続いておりますな。
]]></description>
		<wfw:commentRss>http://kichon.net/blog/?feed=rss2&amp;p=1959</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://kichon.net/blog/?p=1959" />
	</item>
		<item>
		<title>【php】【symfony】【doctrine】各種マニュアルを読んでみる(5日目)</title>
		<link>http://kichon.net/blog/?p=1955</link>
		<comments>http://kichon.net/blog/?p=1955#comments</comments>
		<pubDate>Sun, 04 Sep 2011 14:02:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ORM]]></category>
		<category><![CDATA[symfony]]></category>

		<guid isPermaLink="false">http://kichon.net/blog/?p=1955</guid>
		<description><![CDATA[
だいぶ期間は空きましたがまだまだ読んでいます。
そして今回はDoctrineに関して再度マニュアルを読みました。

■進捗状況
・PHP：特になし
・symfony：特になし
・Doctrine：Component Overview

レコード、テーブル、コレクションの違いをはっきり意識して開発を進める事は大事だな。
具体的にuserテーブルというのを作成したとすると以下の様な継承関係になる。

■Doctrineオブジェクト
○レコード
 &#8211; User.class
 ∟BaseTUser.class
  ∟sfDoctrineRecord
   ∟ Doctrine_Record

○テーブル
 &#8211; TUserTable.class
  ∟ Doctrine_Table

○コレクション
 &#8211; Doctrine_Collection
]]></description>
		<wfw:commentRss>http://kichon.net/blog/?feed=rss2&amp;p=1955</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://kichon.net/blog/?p=1955" />
	</item>
		<item>
		<title>【PHP】Memcached</title>
		<link>http://kichon.net/blog/?p=1953</link>
		<comments>http://kichon.net/blog/?p=1953#comments</comments>
		<pubDate>Fri, 02 Sep 2011 00:30:59 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[memcached]]></category>

		<guid isPermaLink="false">http://kichon.net/blog/?p=1953</guid>
		<description><![CDATA[
今度はMemcachedクラスを見てみました。

Memcached
Memcached &#8211; PHP Manual

Memcacheよりもメソッドが多くて使い方は変わらないです。

]]></description>
		<wfw:commentRss>http://kichon.net/blog/?feed=rss2&amp;p=1953</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://kichon.net/blog/?p=1953" />
	</item>
		<item>
		<title>【PHP】Memcache</title>
		<link>http://kichon.net/blog/?p=1951</link>
		<comments>http://kichon.net/blog/?p=1951#comments</comments>
		<pubDate>Tue, 30 Aug 2011 16:40:57 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[memcached]]></category>

		<guid isPermaLink="false">http://kichon.net/blog/?p=1951</guid>
		<description><![CDATA[
memcachedに関して見ました。

PHPにはmemcachedを扱う方法として2つのモジュールがある。
1つ目はMemcacheで2つ目はMemcached。

Memcacheはpear形式で、Memcachedはpecl形式でインストールするとのこと。
とりあえず今回はMemcacheの方をみました。

Memcache
Memcache &#8211; PHP Manual

例:
memcache1.php

&#60;?php
$mem = new Memcache;
$mem-&#62;connect&#40;'localhost', 11211&#41;;
$mem-&#62;set&#40;'key1', 'value1'&#41;;
$mem-&#62;set&#40;'key2', 'value2'&#41;;

echo $mem-&#62;get&#40;'key1'&#41;, PHP_EOL;
echo $mem-&#62;get&#40;'key2'&#41;, PHP_EOL;

簡単には上記の様な感じで使用をして、他にもいくつかのメソッドがあるのでそれはマニュアルを参照する。
]]></description>
		<wfw:commentRss>http://kichon.net/blog/?feed=rss2&amp;p=1951</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://kichon.net/blog/?p=1951" />
	</item>
		<item>
		<title>【PHP】例外について</title>
		<link>http://kichon.net/blog/?p=1949</link>
		<comments>http://kichon.net/blog/?p=1949#comments</comments>
		<pubDate>Tue, 30 Aug 2011 13:20:39 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://kichon.net/blog/?p=1949</guid>
		<description><![CDATA[
例外についてずっと避けてきたんですが（理由はわからないけど、なんかとっつきにくいイメージがありました。。）、
さらりとマニュアルを読んでみました。

例外
Exception &#8211; PHP Manual

読んでみたらなんも難しい事はなくむしろありがたいかなと思えた今日この頃。
この記憶がいつまで続くかわかりませんが、大事にしたいと思います。
]]></description>
		<wfw:commentRss>http://kichon.net/blog/?feed=rss2&amp;p=1949</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://kichon.net/blog/?p=1949" />
	</item>
		<item>
		<title>【php】【symfony】【doctrine】各種マニュアルを読んでみる(4日目)</title>
		<link>http://kichon.net/blog/?p=1946</link>
		<comments>http://kichon.net/blog/?p=1946#comments</comments>
		<pubDate>Mon, 29 Aug 2011 00:32:15 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[symfony]]></category>

		<guid isPermaLink="false">http://kichon.net/blog/?p=1946</guid>
		<description><![CDATA[
ちょっと期間は空いてしまいましたが、まだかろうじて読もうという気持ちはあります。

■進捗状況
・PHP：特になし
・symfony：第6章 &#8211; コントローラーレイヤーの内側
・Doctrine：特になし


cacheの部分で自分でmemcacheを導入してみるのと、自作のフィルターを作成してみる事が課題かなと。

では。
]]></description>
		<wfw:commentRss>http://kichon.net/blog/?feed=rss2&amp;p=1946</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://kichon.net/blog/?p=1946" />
	</item>
		<item>
		<title>【nginx】nginxをちょこっとだけ覗いてみました</title>
		<link>http://kichon.net/blog/?p=1942</link>
		<comments>http://kichon.net/blog/?p=1942#comments</comments>
		<pubDate>Mon, 29 Aug 2011 00:28:08 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[nginx]]></category>

		<guid isPermaLink="false">http://kichon.net/blog/?p=1942</guid>
		<description><![CDATA[
ちょこっとだけ覗くレベルのものではない（もっとがっつりやれよという意味で。）気がしますが、、、
nginxをちょこっとだけ覗いてみました。

nginxとは by wikipedia

	軽量高性能なWebサーバ/リバースプロキシ
	BSD系ライセンスでリリースされている
	静的ファイル、インデックスファイルの処理と自動インデクシング
	キャッシュ付きリバースプロキシ
	負荷分散
	フォールトトレラント性
	SSL/TLSサポート
	FastCGIサポート
	名前ベースおよびIPベースの仮想サーバ
	FLVストリーミング
	MP4ストリーミング
	Webページアクセス認証
	gzip圧縮


Apacheの標準がpreforkで動くのに対し、nginxは1つのマスタープロセスと複数のワーカープロセスで動く。

1 万の非アクティブな HTTP キープアライブ接続は約 2.5M のメモリーを使用

というものらしい。

nginxはC10K問題を解決する為に作られたものらしく、C10K問題とはクライアント1万台問題のことで、
最近の動向として軽い処理を大量に扱わなければならないということがあり、
その時の問題になるのがCPUでもメモリでもなくプロセス番号が問題になる。

Apacheみたいに1プロセス1クライアントで処理していたら1台のサーバでは3万クライアントくらい（ポート番号のMAXは
32767）しか処理しきれないため、1スレッドで数クライアントを処理する事を求められる。


とりあえずここまで覗いてみてインストールしてアクセスできるようにしてみました。
今度はもっとがっつりみてみます。
]]></description>
		<wfw:commentRss>http://kichon.net/blog/?feed=rss2&amp;p=1942</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://kichon.net/blog/?p=1942" />
	</item>
		<item>
		<title>【PHP】spl_autoload_registerに関して</title>
		<link>http://kichon.net/blog/?p=1930</link>
		<comments>http://kichon.net/blog/?p=1930#comments</comments>
		<pubDate>Thu, 25 Aug 2011 16:09:08 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://kichon.net/blog/?p=1930</guid>
		<description><![CDATA[
PHPのspl_autoload_registerがよくわかってなかったので再度調べてみました。

PHP5以降では未定義のクラス/インターフェースを実行しようとした時に自動的にコールされる
__autoload関数というものがある。

__autoload関数
例1:
autoload1.php

&#60;?php
function __autoload&#40;$class_name&#41;
&#123;
&#160; &#160; echo &#34;$class_name\n&#34;;
&#125;
$obj1 = new MyClass1&#40;&#41;;
$obj2 = new MyClass2&#40;&#41;;

結果:
MyClass1
PHP Fatal error:  Class &#8216;MyClass1&#8242; not found in autoload1.php on line 8

解説:
1.MyClass1を読み込もうとする
2.読み込めないため__autoload関数を実行
3.echoで出力
4.それでもクラスは存在しないためエラー出力

例2:
autoload2.php

&#60;?php
function __autoload&#40;$class&#41;
&#123;
&#160; &#160; require_once $class.'.php';
&#160; &#160; echo __FILE__ . &#34;\n&#34;;
&#125;
$obj = new MyClass1&#40;&#41;;

MyClass1.php

&#60;?php
class MyClass1
&#123;
&#160; &#160; function __construct&#40;&#41;
&#160; &#160; &#123;
&#160; &#160; &#160; &#160; echo __CLASS__ . &#34;\n&#34;;
&#160; &#160; &#125;
&#125;

結果:
# php autoload2.php
autoload2.php
MyClass1

解説:
1.MyClass1の読み込み
2.未実装な為、___autoloadを実行
3.__autoload内でMyClass1.phpの読み込み
4.echo出力
5.MyClassのコンストラクタ実行

例3:

&#60;?php
function __autoload&#40;$class&#41;
&#123;
&#160; &#160; require_once [...]]]></description>
		<wfw:commentRss>http://kichon.net/blog/?feed=rss2&amp;p=1930</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://kichon.net/blog/?p=1930" />
	</item>
		<item>
		<title>【php】【symfony】【doctrine】各種マニュアルを読んでみる(3日目)</title>
		<link>http://kichon.net/blog/?p=1921</link>
		<comments>http://kichon.net/blog/?p=1921#comments</comments>
		<pubDate>Sun, 21 Aug 2011 02:42:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[ORM]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[symfony]]></category>
		<category><![CDATA[doctrine]]></category>

		<guid isPermaLink="false">http://kichon.net/blog/?p=1921</guid>
		<description><![CDATA[
さて、3日目にしてそろそろしんどくなってきました。
PHPに関してはとびとびで読んでいこうと思います。

■進捗状況
・PHP：トレイト
・symfony：第5章 &#8211; symfony を設定する
・Doctrine：Component Overview

トレイトに関しては別途記事を書いたのでそちらを読んで下さい。

Symfonyは3~5章を読みました。
以下に軽くまとめます。
symfony1.4に関して(3章から5章)

	PHP 5.2.4以上が必要
	3章はsymfonyのインストール方法などを説明
        簡単に使いたいのであればサンドボックスがある為そちらを使う
	
	4章では簡単なページを作ってる(Hello, World!)
	ページはアクションとテンプレートで構成される
	リクエストはsfWebRequestクラスで扱う
	
	5章では設定ファイルとキャッシュに関しての説明
	設定ファイルはデフォルトでYAML形式（変更可）
	設定ファイルはキャッシュされる
	環境毎にアプリケーションを分ける事ができる（prod, dev, test）
	環境の切り分けはフロントコントローラ(index.php, frontend_dev.php)で行われる
	設定ファイルは沢山あってすべてを覚えるのは大変そうだから一つづいこう
	設定ファイルのパラメータはsfConfig::get()で設定でき、sfConfig::set()で書き換える事ができる
	設定ファイルの中で違う設定ファイルの内容を読み込む事もできるが、ファイルの読み込む順番があるから気をつける


]]></description>
		<wfw:commentRss>http://kichon.net/blog/?feed=rss2&amp;p=1921</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<xhtml:link rel="alternate" media="handheld" type="text/html" href="http://kichon.net/blog/?p=1921" />
	</item>
	</channel>
</rss>

