<?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/"
	>

<channel>
	<title>わすれないように. &#187; php</title>
	<atom:link href="http://www.makies.com/tags/php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.makies.com</link>
	<description>メモ書き程度。</description>
	<lastBuildDate>Sun, 21 Mar 2010 11:13:32 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>PHP4&amp;PHP5でPDFを作成したいときに</title>
		<link>http://www.makies.com/2008/11/107/</link>
		<comments>http://www.makies.com/2008/11/107/#comments</comments>
		<pubDate>Wed, 26 Nov 2008 09:47:12 +0000</pubDate>
		<dc:creator>maki</dc:creator>
				<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.makies.com/?p=107</guid>
		<description><![CDATA[PHPでPDF作成の定番といえば、FPDFやPDFlibなんかがありますが、
さらにその上を行くライブラリがありました。
TCPDF
PHPSpotのblogではこんな風に紹介されていました。
PHPでPDFファイルを作成するFPDFの進化版『TCPDF』。
デフォルトでUnicode(UTF-8)が使えたり、次のような特徴があります。
PDF作成テキストにHTML( h1, h2, h3, h4, h5, h6, b, u, i, a, img, p, br, strong, em, font, blockquote, li, ul, ol, hr, td, th, tr, table, sup, sub, small )タグが使用できる
バーコードが作成できる
フォントは、TrueTypeUnicode, TrueType, Type1 をサポート
ページのフォーマットが利用できる(マージン等)
自動改ページが可能
JPEG/PNG画像が使える
HTMLが使えるというのが大きくて、次のようなPDFが簡単に作れます。
(ダウンロードパッケージに含まれるサンプルを元に作成したＰＤＦ）

今回はPHP4.3系が入っているテストサーバーでサンプル作成をしてみました。
当初はFPDFを使う予定が、FPDFのクラスをnewした時点で、
this version of PHP is not suported.
と、悲しいことを言われてしまったのです。
結構探したつもりなのですが、必要環境(PHPのバージョン等)の詳細が不明のまま。
FPDFの進化版『TCPDF』と紹介されていたTCPDFを試してみました。
PHP4なので
tcpdf_php4 TCPDF 4.3.005_PHP4 released (Tue, 25 Nov 2008 15:44:26 GMT)
こちらをダウンロード。
一式サーバーにアップロードして、sampleフォルダに入っているsampleを開いてみると
（何事もなく）PHPで生成されたPDFが表示されました。
日本語を使いたいときには日本語の使えるフォントを指定してやらなければなりません。
$pdf->SetFont(&#8216;kozgopromedium&#8217;,null,8);
こちらのサイトを参考にしました。
TCPDFに関するリファレンス・ドキュメント
サンプルでは$pdf->Cellが多用されていましたが、帳票印刷をするときなどはこちらの方が便利。
$pdf->Text(左からの距離,上からの距離,&#8221;出力したい文字列&#8221;);
ちなみに$pdf->Text();に長いテキストを渡すと、自動改行してくれずに1行で表示（表示しきれなくて切れる）
してしまいます。
$pdf->WriteHTML(テキスト);
こちらを使うと、ページ幅で改行してくれる様です。
メソッド名がWriteHTMLなので、HTMLタグも使用可なんでしょう、きっと。
ここらへんはこれから要調査、です。
]]></description>
			<content:encoded><![CDATA[<p>PHPでPDF作成の定番といえば、FPDFやPDFlibなんかがありますが、<br />
さらにその上を行くライブラリがありました。</p>
<p><a href="http://www.tecnick.com/public/code/cp_dpage.php?aiocp_dp=tcpdf">TCPDF</a></p>
<p>PHPSpotのblogではこんな風に紹介されていました。</p>
<blockquote><p>PHPでPDFファイルを作成する<strong>FPDFの進化版『TCPDF』</strong>。</p>
<p>デフォルトでUnicode(UTF-8)が使えたり、次のような特徴があります。</p>
<p>PDF作成テキストにHTML( h1, h2, h3, h4, h5, h6, b, u, i, a, img, p, br, strong, em, font, blockquote, li, ul, ol, hr, td, th, tr, table, sup, sub, small )タグが使用できる<br />
バーコードが作成できる<br />
フォントは、TrueTypeUnicode, TrueType, Type1 をサポート<br />
ページのフォーマットが利用できる(マージン等)<br />
自動改ページが可能<br />
JPEG/PNG画像が使える<br />
HTMLが使えるというのが大きくて、次のようなPDFが簡単に作れます。<br />
(ダウンロードパッケージに含まれるサンプルを元に作成したＰＤＦ）</p></blockquote>
<p><span id="more-107"></span></p>
<p>今回はPHP4.3系が入っているテストサーバーでサンプル作成をしてみました。<br />
当初はFPDFを使う予定が、FPDFのクラスをnewした時点で、<br />
<strong>this version of PHP is not suported.</strong><br />
と、悲しいことを言われてしまったのです。<br />
結構探したつもりなのですが、必要環境(PHPのバージョン等)の詳細が不明のまま。</p>
<p>FPDFの進化版『TCPDF』と紹介されていたTCPDFを試してみました。<br />
PHP4なので<br />
tcpdf_php4 TCPDF 4.3.005_PHP4 released (Tue, 25 Nov 2008 15:44:26 GMT)<br />
こちらをダウンロード。</p>
<p>一式サーバーにアップロードして、sampleフォルダに入っているsampleを開いてみると<br />
（何事もなく）PHPで生成されたPDFが表示されました。</p>
<p>日本語を使いたいときには日本語の使えるフォントを指定してやらなければなりません。<br />
$pdf->SetFont(&#8216;kozgopromedium&#8217;,null,8);</p>
<p>こちらのサイトを参考にしました。<br />
<a href="http://www.monzen.org/Refdoc/tcpdf/">TCPDFに関するリファレンス・ドキュメント</a></p>
<p>サンプルでは$pdf->Cellが多用されていましたが、帳票印刷をするときなどはこちらの方が便利。<br />
$pdf->Text(左からの距離,上からの距離,&#8221;出力したい文字列&#8221;);</p>
<p>ちなみに$pdf->Text();に長いテキストを渡すと、自動改行してくれずに1行で表示（表示しきれなくて切れる）<br />
してしまいます。</p>
<p>$pdf->WriteHTML(テキスト);<br />
こちらを使うと、ページ幅で改行してくれる様です。<br />
メソッド名がWriteHTMLなので、HTMLタグも使用可なんでしょう、きっと。<br />
ここらへんはこれから要調査、です。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.makies.com/2008/11/107/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP北海道とか肉とか</title>
		<link>http://www.makies.com/2008/07/56/</link>
		<comments>http://www.makies.com/2008/07/56/#comments</comments>
		<pubDate>Sun, 27 Jul 2008 14:07:06 +0000</pubDate>
		<dc:creator>maki</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[未分類]]></category>

		<guid isPermaLink="false">http://www.makies.com/200807/56/</guid>
		<description><![CDATA[今週末、php北海道な話とかをしながら肉を食べよう、ということで集まって１日話してきた内容を軽くまとめ。遊んだ話はmixiの方で。。。 
会の方向性
 

PHP北海道的なユーザー会みたいなのをやりたい
ゆる〜くなが〜く
定期的に集まりを開催したい。第○土曜日とかそんな感じで。
バトミントン等で軽く運動不足解消＋２時間ぐらい勉強会＋懇親会
会場さえ押さえられれば、９月頭ぐらいから
最初はやっぱり誰かが発表してそれを聞く形かな？
 3ヶ月に１回ぐらいの輪講形式はどうか
フレームワークの話

cakePHP等、話題のもの
オレオレフレームワーク、どの辺までやってる？やってない？


JPUGとの合同イベントやる？
とりあえずドメイン、連絡用のMLとwikiを確保したい

会場とか

 公共施設を借りる方向で
区民センターとか安いよね？
公民館とかネタ的に良くない？

名称

PHP北海道

とりあえず仮称というかイメージ的には。
&#8220;北海道&#8221;と着くと、道内各地も目を向けなきゃいけない気がしちゃうかも


PHP札幌

Ruby札幌の真似っこぽいね（笑
北海道よりは&#8221;サッポロ&#8221;のほうがいい。みんな札幌大好き


PHP友の会

googleグループに既に同名のグループが存在
言語じゃないPHPの同名サイトも発見した


北海道ローカル　PHP部（部活制？） 

これだとlocalのサブドメイン使いやすい？
お金ももらいやすい？



 たいしてまとまってないけど、だいたいこんな感じだったかと。 話が飛び飛びだったので抜け漏れ＆勘違いあるかも。興味がある道内の方がいればぜひコンタクトしていただければと思います。 
]]></description>
			<content:encoded><![CDATA[<p>今週末、php北海道な話とかをしながら肉を食べよう、ということで集まって１日話してきた内容を軽くまとめ。遊んだ話はmixiの方で。。。 <br />
<h3>会の方向性</h3>
<p> 
<ul>
<li>PHP北海道的なユーザー会みたいなのをやりたい</li>
<li>ゆる〜くなが〜く</li>
<li>定期的に集まりを開催したい。第○土曜日とかそんな感じで。</li>
<li>バトミントン等で軽く運動不足解消＋２時間ぐらい勉強会＋懇親会</li>
<li>会場さえ押さえられれば、９月頭ぐらいから</li>
<li>最初はやっぱり誰かが発表してそれを聞く形かな？</li>
<li> 3ヶ月に１回ぐらいの輪講形式はどうか</li>
<li>フレームワークの話
<ul>
<li>cakePHP等、話題のもの</li>
<li>オレオレフレームワーク、どの辺までやってる？やってない？</li>
</ul>
</li>
<li>JPUGとの合同イベントやる？</li>
<li>とりあえずドメイン、連絡用のMLとwikiを確保したい</li>
</ul>
<h3>会場とか</h3>
<ul>
<li> 公共施設を借りる方向で</li>
<li>区民センターとか安いよね？</li>
<li>公民館とかネタ的に良くない？</li>
</ul>
<h3>名称</h3>
<ul>
<li>PHP北海道
<ul>
<li>とりあえず仮称というかイメージ的には。</li>
<li>&#8220;北海道&#8221;と着くと、道内各地も目を向けなきゃいけない気がしちゃうかも</li>
</ul>
</li>
<li>PHP札幌
<ul>
<li>Ruby札幌の真似っこぽいね（笑</li>
<li>北海道よりは&#8221;サッポロ&#8221;のほうがいい。みんな札幌大好き</li>
</ul>
</li>
<li>PHP友の会
<ul>
<li>googleグループに既に同名のグループが存在</li>
<li>言語じゃないPHPの同名サイトも発見した</li>
</ul>
</li>
<li>北海道ローカル　PHP部（部活制？） 
<ul>
<li>これだとlocalのサブドメイン使いやすい？</li>
<li>お金ももらいやすい？</li>
</ul>
</li>
</ul>
<p> たいしてまとまってないけど、だいたいこんな感じだったかと。 話が飛び飛びだったので抜け漏れ＆勘違いあるかも。興味がある道内の方がいればぜひコンタクトしていただければと思います。 </p>
]]></content:encoded>
			<wfw:commentRss>http://www.makies.com/2008/07/56/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>csv出力したいときの３つのコツ</title>
		<link>http://www.makies.com/2007/10/22/</link>
		<comments>http://www.makies.com/2007/10/22/#comments</comments>
		<pubDate>Mon, 22 Oct 2007 06:59:25 +0000</pubDate>
		<dc:creator>maki</dc:creator>
				<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://makies.com/200710/22/</guid>
		<description><![CDATA[１、出力前にheader出力

header(&#8220;Accept-Ranges: none&#8221;);
header(&#8220;Content-Disposition: inline; filename=$filename&#8221;);
header(&#8220;Content-Transfer-Encoding: binary&#8221;);
header(&#8220;Content-Length: &#8220;. strlen($contents) );
header(&#8220;Content-Type: text/octet-stream&#8221;);

$filenameは、DLするファイル名
$filename = ***.csv 
２、データは全てSJISにエンコード変換
.csvのファイルを開くと大概Excelで開こうとするので、SJISに変換しておく。
ソースをSJIS以外で書いているときは特に、
ソース内で挿入するデータやデータ連結に使う文字列「：」（全角コロン）なんかも
忘れずにエンコードしておかないと、文字化けする。
３、データは配列で
php側では２次元配列に整形しておく
$data_cnt = count($data);
for($i=0; $i< $data_cnt; $i++){
    $csv = implode(","$data[$i]);
    echo $csv;
}
コレでOK
]]></description>
			<content:encoded><![CDATA[<h3>１、出力前にheader出力</h3>
<blockquote><p>
header(&#8220;Accept-Ranges: none&#8221;);<br />
header(&#8220;Content-Disposition: inline; filename=$filename&#8221;);<br />
header(&#8220;Content-Transfer-Encoding: binary&#8221;);<br />
header(&#8220;Content-Length: &#8220;. strlen($contents) );<br />
header(&#8220;Content-Type: text/octet-stream&#8221;);
</p></blockquote>
<p>$filenameは、DLするファイル名</p>
<blockquote><p>$filename = ***.csv </p></blockquote>
<h3>２、データは全てSJISにエンコード変換</h3>
<p>.csvのファイルを開くと大概Excelで開こうとするので、SJISに変換しておく。<br />
ソースをSJIS以外で書いているときは特に、<br />
ソース内で挿入するデータやデータ連結に使う文字列「：」（全角コロン）なんかも<br />
忘れずにエンコードしておかないと、文字化けする。</p>
<h3>３、データは配列で</h3>
<p>php側では２次元配列に整形しておく</p>
<blockquote><p>$data_cnt = count($data);<br />
for($i=0; $i< $data_cnt; $i++){<br />
    $csv = implode(","$data[$i]);<br />
    echo $csv;<br />
}</p></blockquote>
<p>コレでOK</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.makies.com/2007/10/22/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>cakePHPが盛り上がってるっぽい</title>
		<link>http://www.makies.com/2007/06/11/</link>
		<comments>http://www.makies.com/2007/06/11/#comments</comments>
		<pubDate>Wed, 20 Jun 2007 07:47:49 +0000</pubDate>
		<dc:creator>maki</dc:creator>
				<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://makies.com/?p=11</guid>
		<description><![CDATA[前にPHPによるJavaScriptを書かないAjaxで見つけて気になっていたphpのフレームワークあとで試してみようか、と。
CakePHPで高速Webアプリ開発　第1回　CakePHPを使いたくなる5つの特徴http://gihyo.jp/dev/serial/01/cakephp/0001
CakePHPでSNSっぽいものをつくって挫折するまでのコーディング日記http://www.ideaxidea.com/archives/2007/06/cakephpsns000.html
CakePHPでSNSっぽいものをつくって挫折するまでのコーディング日記」へツッコミをいれていきますhttp://www.akiyan.com/blog/archives/2007/06/cakephpsns.html
連載「CakePHPで高速Webアプリ開発」が始まるhttp://blog.makies.com/archives/506-CakePHPWeb.html



PHPによるJavaScriptを書かないAjax
佐久嶋 ひろみ / 九天社(2007/05)
Amazonランキング：15762位Amazonおすすめ度：
Amazonで詳細を見るBooklogでレビューを見る by Booklog


]]></description>
			<content:encoded><![CDATA[<p>前に<a href=&quot;http://www.amazon.co.jp/gp/product/4861671752%3ftag=wasurenaiyoun-22%26link_code=xm2%26camp=2025&quot; target=&quot;_blank&quot;>PHPによるJavaScriptを書かないAjax</a>で見つけて気になっていたphpのフレームワーク<br />あとで試してみようか、と。</p>
<p>CakePHPで高速Webアプリ開発　第1回　CakePHPを使いたくなる5つの特徴<br /><a href=&quot;http://gihyo.jp/dev/serial/01/cakephp/0001&quot;>http://gihyo.jp/dev/serial/01/cakephp/0001</a></p>
<p>CakePHPでSNSっぽいものをつくって挫折するまでのコーディング日記<br /><a href=&quot;http://www.ideaxidea.com/archives/2007/06/cakephpsns000.html&quot;>http://www.ideaxidea.com/archives/2007/06/cakephpsns000.html</a></p>
<p>CakePHPでSNSっぽいものをつくって挫折するまでのコーディング日記」へツッコミをいれていきます<a href=&quot;http://www.akiyan.com/blog/archives/2007/06/cakephpsns.html&quot;>http://www.akiyan.com/blog/archives/2007/06/cakephpsns.html</a></p>
<p>連載「CakePHPで高速Webアプリ開発」が始まる<br /><a href=&quot;http://blog.makies.com/archives/506-CakePHPWeb.html&quot;>http://blog.makies.com/archives/506-CakePHPWeb.html</a></p>
<div class=&quot;booklog-all&quot; style=&quot;MARGIN-BOTTOM: 10px&quot;>
<div class=&quot;booklog-img&quot; style=&quot;FLOAT: left; MARGIN-RIGHT: 15px&quot;><a href=&quot;http://www.amazon.co.jp/gp/product/4861671752%3ftag=wasurenaiyoun-22%26link_code=xm2%26camp=2025&quot; target=&quot;_blank&quot;><img class=&quot;booklog-imgsrc&quot; style=&quot;BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; WIDTH: 100px; BORDER-BOTTOM: 0px&quot; src=&quot;http://ec1.images-amazon.com/images/I/21owr2l+1tL.jpg&quot; /></a></div>
<div class=&quot;booklog-data&quot; style=&quot;FLOAT: left; WIDTH: 300px&quot;>
<div class=&quot;booklog-title&quot;><a href=&quot;http://www.amazon.co.jp/gp/product/4861671752%3ftag=wasurenaiyoun-22%26link_code=xm2%26camp=2025&quot; target=&quot;_blank&quot;>PHPによるJavaScriptを書かないAjax</a></div>
<div class=&quot;booklog-pub&quot;>佐久嶋 ひろみ / 九天社(2007/05)</div>
<div class=&quot;booklog-info&quot; style=&quot;MARGIN-TOP: 10px&quot;>Amazonランキング：15762位<br />Amazonおすすめ度：<img src=&quot;http://booklog.jp/img/0.gif&quot; /></div>
<div class=&quot;booklog-link&quot; style=&quot;MARGIN-TOP: 10px&quot;><a href=&quot;http://www.amazon.co.jp/gp/product/4861671752%3ftag=wasurenaiyoun-22%26link_code=xm2%26camp=2025&quot; target=&quot;_blank&quot;>Amazonで詳細を見る</a><br /><a href=&quot;http://booklog.jp/asin/4861671752/via=maki&quot; target=&quot;_blank&quot;>Booklogでレビューを見る</a> by <a href=&quot;http://booklog.jp/&quot; target=&quot;_blank&quot;>Booklog</a></div>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.makies.com/2007/06/11/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
