<?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>[札幌] ホームページ制作、出張DTM作曲レッスン、PCサポート - sand a lot</title>
	<atom:link href="http://www.sandalot.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.sandalot.com</link>
	<description>ホームページのデザイン、PHPやPerl、JavaScriptなどのプログラミング、Webシステム開発、HTMLやCSSを利用したコーディングなど、ホームページ制作及びテーマ曲、ジングル、BGMなどの音楽制作及びDTM作曲レッスンを行っております。</description>
	<lastBuildDate>Fri, 09 Dec 2011 06:19:22 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Puppy Linuxをインストールしてみました。</title>
		<link>http://www.sandalot.com/archives/507.html</link>
		<comments>http://www.sandalot.com/archives/507.html#comments</comments>
		<pubDate>Fri, 02 Dec 2011 08:16:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[新着情報&業務日誌]]></category>

		<guid isPermaLink="false">http://www.sandalot.com/?p=507</guid>
		<description><![CDATA[それはもう古いパソコン（10年以上前のもの）が自宅に放置されていて、ハード的な故障などは無いためなんとか活用出来ないかな〜と思っていたのですが、今日少し時間があったので、いろいろ調べてみました。 もちろんWindowsな [...]]]></description>
			<content:encoded><![CDATA[<p>それはもう古いパソコン（10年以上前のもの）が自宅に放置されていて、ハード的な故障などは無いためなんとか活用出来ないかな〜と思っていたのですが、今日少し時間があったので、いろいろ調べてみました。</p>
<p>もちろんWindowsなどは使えないのでLinuxかなと思っていたら、『Puppy Linux』というLinuxディストリビューションがすごく軽いという情報を得ました。なんと『CPU: Pentium 166MMX, RAM: 128MB, CDROM: 20倍速以上』という動作条件。これならと思いインストールしてみました。</p>
<p>Windows2000がインストールされていた時には、動作が重くて使い物にならなかったのですが、Puppy Linuxなら全然問題無く使えそうです。Office系ソフトや画像系ソフトも入っているし、ちょっと古いバージョンのGoogle ChromeがPuppy Linux用に配布されているので、それもインストールしてみました。</p>
<p>メイン機としては物足りないですが、何かの時のサブ機としては充分使えそうです。（『何かの時』ってどんな時か判りませんが。）</p>
<p>たまにLinuxを触ってみると、いつもと少し変化があって面白いですね。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sandalot.com/archives/507.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>デザイナーからデザインの基礎や原則を学べるエントリーまとめ</title>
		<link>http://www.sandalot.com/archives/504.html</link>
		<comments>http://www.sandalot.com/archives/504.html#comments</comments>
		<pubDate>Thu, 01 Dec 2011 03:13:34 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[新着情報&業務日誌]]></category>

		<guid isPermaLink="false">http://www.sandalot.com/?p=504</guid>
		<description><![CDATA[デザイナーからデザインの基礎や原則を学べるエントリーまとめ（webデザイナ向け） 大事なことばかりなので、勝手ながら紹介させて頂きました。 改めて勉強しなおさなければと思いますね．]]></description>
			<content:encoded><![CDATA[<p><a href="http://e0166.blog89.fc2.com/blog-entry-921.html" target="_blank">デザイナーからデザインの基礎や原則を学べるエントリーまとめ（webデザイナ向け）</a></p>
<p>大事なことばかりなので、勝手ながら紹介させて頂きました。</p>
<p>改めて勉強しなおさなければと思いますね．</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sandalot.com/archives/504.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Googleサイト初使用</title>
		<link>http://www.sandalot.com/archives/412.html</link>
		<comments>http://www.sandalot.com/archives/412.html#comments</comments>
		<pubDate>Tue, 29 Nov 2011 15:24:46 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[新着情報&業務日誌]]></category>

		<guid isPermaLink="false">http://www.sandalot.com/?p=412</guid>
		<description><![CDATA[今まで気になっていながら全く触っていなかったGoogleのサービスの一つ『Googleサイト』を少し使ってみました。（１時間くらい） デザインをするのに必要な部分はおおよそおさえられていて、なかなか質のいいサービスだなと [...]]]></description>
			<content:encoded><![CDATA[<p>今まで気になっていながら全く触っていなかったGoogleのサービスの一つ『Googleサイト』を少し使ってみました。（１時間くらい）</p>
<p>デザインをするのに必要な部分はおおよそおさえられていて、なかなか質のいいサービスだなと思いました。実際にGoogleサイトで作られているWebサイトを見ても、かなりよく出来ているものもあり、フッターやソースを見ないとGoogleサイトだと判らないものもありますね。</p>
<p>個人的には、制作のためのGUIがまだ改良すべきだろうなという印象でしたが、Googleのことなので恐らく徐々に改善されるでしょうね。</p>
<p>いつになるかは判りませんが、そちらもきっちり制作していずれ公開したいと思っています。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sandalot.com/archives/412.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>マイナーリニューアル</title>
		<link>http://www.sandalot.com/archives/368.html</link>
		<comments>http://www.sandalot.com/archives/368.html#comments</comments>
		<pubDate>Tue, 29 Nov 2011 04:12:19 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[新着情報&業務日誌]]></category>

		<guid isPermaLink="false">http://www.sandalot.com/?p=368</guid>
		<description><![CDATA[現在当Webサイトのマイナーリニューアル作業中です。 『マイナーリニューアル』という言葉ってあるのかな〜と思っていたら、結構使っている場合があるんですね。（Google検索から） アプリケーションの『マイナーアップデート [...]]]></description>
			<content:encoded><![CDATA[<p>現在当Webサイトのマイナーリニューアル作業中です。</p>
<p>『マイナーリニューアル』という言葉ってあるのかな〜と思っていたら、結構使っている場合があるんですね。（Google検索から）</p>
<p>アプリケーションの『マイナーアップデート』はよく言いますが、『マイナーリニューアル』も結構使われているとは思っていませんでした。</p>
<p>簡単に思いついたことはほとんどの場合、先に思いついている人がどこかにいるということですね。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sandalot.com/archives/368.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP &#8211; ファイル入出力 その3</title>
		<link>http://www.sandalot.com/archives/234.html</link>
		<comments>http://www.sandalot.com/archives/234.html#comments</comments>
		<pubDate>Mon, 05 Sep 2011 08:17:27 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[プログラミングTips]]></category>

		<guid isPermaLink="false">http://www.sandalot.com/?p=234</guid>
		<description><![CDATA[fopen、fclose、fgets、fwrite、die以外のファイル入出力関連関数の中で、よく使う関数には以下のようなものがあります。 ☆ file関数 ******************************* [...]]]></description>
			<content:encoded><![CDATA[<p>fopen、fclose、fgets、fwrite、die以外のファイル入出力関連関数の中で、よく使う関数には以下のようなものがあります。</p>
<p>☆ file関数<br />
***********************************************************<br />
$line = file(&#8220;./test.dat&#8221;);<br />
***********************************************************<br />
上記のように記述することで、ファイルの内容を一行毎に配列として$lineに格納します。<br />
また、以下のようにすることにより、Webページのデータも取得する事ができます。<br />
***********************************************************<br />
$line = file(&#8220;http://www.example.com/&#8221;);<br />
***********************************************************</p>
<p>☆ fread関数<br />
***********************************************************<br />
if($filehandle = @fopen(&#8220;./test.dat&#8221;, &#8216;r&#8217;)){<br />
    $buffer = fread($filehandle,1024);<br />
    fclose($filehandle);<br />
}<br />
***********************************************************<br />
freadではバイナリモードでファイルを読み込みます。第一引数がファイルハンドル、第二引数で読み込むサイズを指定します。つまり上記の例では、『test.dat』から1024バイトを読み込み$bufferに格納します。バイナリモードなので、もちろん改行コードなどは関係無く、一つの文字列として読み込む事になります。<br />
上記の例の中の『1024』という部分に、『filesize(&#8220;./test.dat&#8221;)』という記述を加えることで、ファイルの内容全てを読み込みます。filesize関数は後述致します。</p>
<p>☆ filesize関数<br />
***********************************************************<br />
$size = filesize(&#8220;./test.dat&#8221;);<br />
***********************************************************<br />
上記のように記述することで、ファイルサイズをバイト単位で取得し、$sizeに格納します。<br />
非常に単純な機能ですが、ファイルのチェックなどによく使用します。</p>
<p>☆ file_exists関数<br />
***********************************************************<br />
$bool = file_exists(&#8220;./test.dat&#8221;);<br />
***********************************************************<br />
上記例では、ファイルが存在すればTrue、存在しなければFalseを取得し、$boolに格納します。<br />
filesize関数と共にファイルチェックなどによく使用しますが、こちらの関数はサイズが0でも存在さえすればTrueを返します。そのため、この関数を使用することで『ファイルが存在する→ファイルサイズ0のファイルを読み込もうとする→エラー』みたいな流れになってしまう事が稀にあるので、注意が必要です。</p>
<p>･･･と書いていますが、ファイル入出力関数は非常に多く、一度では書ききれないので、少しずつ記述していきます。気長にお待ち下さい。（勝手ですみません。）</p>
<p>※ちなみにこの記事は過去に別ブログで掲載していたものを若干加筆修正したものです。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sandalot.com/archives/234.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP &#8211; ファイル入出力 その2</title>
		<link>http://www.sandalot.com/archives/229.html</link>
		<comments>http://www.sandalot.com/archives/229.html#comments</comments>
		<pubDate>Fri, 02 Sep 2011 04:20:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[プログラミングTips]]></category>

		<guid isPermaLink="false">http://www.sandalot.com/?p=229</guid>
		<description><![CDATA[前回fopen、fclose、fgets、fwrite、dieという5つの関数を使用して、簡単なファイルの入出力についてをまとめましたが、この中でエラー処理に使用するdie関数について、注意しなければならないことがありま [...]]]></description>
			<content:encoded><![CDATA[<p>前回fopen、fclose、fgets、fwrite、dieという5つの関数を使用して、簡単なファイルの入出力についてをまとめましたが、この中でエラー処理に使用するdie関数について、注意しなければならないことがあります。<br />
それはdie関数を実行した時点でエラーメッセージを表示しプログラム処理が終わってしまうという事です。これにより、無限ループになったりする事が無く、またエラーメッセージが表示されるのでデバッグがし易くなりますが、実際のサイト運用の際にはほとんどの場合不適切であると思われます。</p>
<p>そこで使用するのがエラー制御演算子『@』です。これをfopen関数の直前に記述します。以下はその例になります。<br />
***********************************************************<br />
if($filehandle = @fopen(&#8220;./test.dat&#8221;, &#8216;r&#8217;)){<br />
    while(!feof($filehandle)){<br />
        $buffer[] = fgets($filehandle);<br />
    }<br />
    fclose($filehandle);<br />
}<br />
***********************************************************<br />
fopen関数の前に記述する事で、エラーを表示しなくなり、このif文を抜けて次の処理に入ります。また上記のスクリプト中ではfgets関数の部分でもエラーが発生してしまう事が多いので、そこにも記述するとよいと思います。</p>
<p>エラーが出るところで毎回これを付けていると結構な量になるんで、実際には一括して表示をしないようにするコマンド（？）を使う事の方が多いかもしれません。（これに関してはいずれ。）　ですが、まずはこのエラー制御演算子『@』を覚えておくととても便利です。</p>
<p>■気を付けたい事<br />
これを付ける事によって、実際の運用上は問題が無くなるかもしれませんが、付けた関数に関わるあらゆるエラーを回避してしまうので、内部的にはエラーが発生しているのに、それに気付かない可能性があります。そのため、充分なデバッグを施してからにすべきであると思われます。</p>
<p>また、逆にエラーが表示されることに関してはセキュリティ上問題があると思われます。このようなPHPプログラミングにおいてのセキュリティに関しては下記書籍がオススメです。</p>
<p><iframe src="http://rcm-jp.amazon.co.jp/e/cm?t=sanalotweb-22&#038;o=9&#038;p=8&#038;l=as1&#038;asins=4883374718&#038;fc1=666460&#038;IS2=1&#038;lt1=_blank&#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>
<p>※ちなみにこの記事は過去に別ブログで掲載していたものを若干加筆修正したものです。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sandalot.com/archives/229.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP &#8211; ファイル入出力 その1</title>
		<link>http://www.sandalot.com/archives/226.html</link>
		<comments>http://www.sandalot.com/archives/226.html#comments</comments>
		<pubDate>Thu, 01 Sep 2011 06:05:41 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[プログラミングTips]]></category>

		<guid isPermaLink="false">http://www.sandalot.com/?p=226</guid>
		<description><![CDATA[PHPでWebページを製作する時に必ずと言っていいほどよく使うファイル入出力についてです。 ■ファイルからのデータ読み取り（入力） 一番簡単なのは以下のようなソースになります。 ********************* [...]]]></description>
			<content:encoded><![CDATA[<p>PHPでWebページを製作する時に必ずと言っていいほどよく使うファイル入出力についてです。</p>
<p>■ファイルからのデータ読み取り（入力）<br />
一番簡単なのは以下のようなソースになります。<br />
***********************************************************<br />
$filehandle = fopen(&#8220;./test.dat&#8221;, &#8216;r&#8217;);<br />
while(!feof($filehandle)){<br />
    $buffer[] = fgets($filehandle);<br />
}<br />
fclose($filehandle);<br />
***********************************************************<br />
これを実行すると、fopen関数の第一引数で指定したファイル（ここでは『test.dat』）のデータが$bufferという配列変数に格納されます。</p>
<p>ただ、このままだといくつかの問題が発生してしまう可能性があります。<br />
★可能性１：指定したファイルが存在しない場合にエラーが出る。<br />
★可能性２：ファイルは存在するが、何らかの影響でファイルの内容を読み取ることが出来なかった時にエラーが出る。<br />
他にも可能性として考えられるものはありますが、多いのは上記2点だと思われます。これが発生してしまうとwhile関数の部分で無限ループに陥ります。</p>
<p>この問題を解決するには以下のように1行目を変更します。<br />
***********************************************************<br />
if(!($filehandle = fopen(&#8220;./test.dat&#8221;, &#8216;r&#8217;))){ die; }<br />
while(!feof($filehandle)){<br />
    $buffer[] = fgets($filehandle);<br />
}<br />
fclose($filehandle);<br />
***********************************************************<br />
fopen関数が失敗した場合にdie関数でプログラムを終了します。これにより無限ループに陥る事は無くなります。</p>
<p>またこのdie関数は以下のように第一引数に文字列を指定する事により、思い通りのエラーメッセージを表示する事もできます。<br />
***********************************************************<br />
die(&#8220;ファイルが存在しないか、ファイルを開く事ができませんでした。&#8221;);<br />
***********************************************************</p>
<p>■ファイルへのデータ書き込み（出力）<br />
一番簡単なのは以下のようなソースになります。<br />
***********************************************************<br />
$filehandle = fopen(&#8220;./test.dat&#8221;, &#8216;w&#8217;);<br />
fwrite($filehandle, &#8220;test&#8221;);<br />
fclose($filehandle);<br />
***********************************************************<br />
これにより、fopen関数の第一引数で指定したファイル（ここでは『test.dat』）に『test』という文字列が書き込まれます。</p>
<p>こちらの場合も、データ読み込みの場合と同様にエラーが起こる可能性があります。（書き込む内容にもよりますが、こちらの場合は無限ループが起きる可能性は低いと思われます。）<br />
なので、やはり1行目を変更します。<br />
***********************************************************<br />
if(!($filehandle = fopen(&#8220;./test.dat&#8221;, &#8216;w&#8217;))){ die; }<br />
fwrite($filehandle, &#8220;test&#8221;);<br />
fclose($filehandle);<br />
***********************************************************</p>
<p>■今回のまとめ<br />
ファイル入出力においては、<br />
基本的にまずfopen関数を使用することになります。<br />
その後、データ読み取りの場合でfget関数、データ書き込みではfwrite関数を使います<br />
そして最後にfclose関数で終了する、という手順になります。</p>
<p>この他にも、いくつか使える関数がありますが、それはまた後日。</p>
<p>※ちなみにこの記事は過去に別ブログで掲載していたものを若干加筆修正したものです。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sandalot.com/archives/226.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP &#8211; 現在時刻の取得方法いろいろ</title>
		<link>http://www.sandalot.com/archives/219.html</link>
		<comments>http://www.sandalot.com/archives/219.html#comments</comments>
		<pubDate>Wed, 31 Aug 2011 02:51:09 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[プログラミングTips]]></category>

		<guid isPermaLink="false">http://www.sandalot.com/?p=219</guid>
		<description><![CDATA[■現在時刻の取得方法はいろいろあります。それを記述してみます。 ☆UNIXタイムスタンプで取得 ************************************************************** [...]]]></description>
			<content:encoded><![CDATA[<p>■現在時刻の取得方法はいろいろあります。それを記述してみます。<br />
☆UNIXタイムスタンプで取得<br />
************************************************************************<br />
time()<br />
strtotime(&#8220;Now&#8221;)<br />
date(&#8220;U&#8221;)<br />
mktime()<br />
************************************************************************<br />
現在時刻をUNIXタイムスタンプで、という目的であれば、上記4つはどれを使っても結果は同じになります。</p>
<p>☆いろいろなフォーマットで取得<br />
************************************************************************<br />
localtime()　→　配列に格納<br />
getdate()　→　連想配列に格納<br />
date()　→　引数にフォーマットを指定<br />
************************************************************************<br />
localtime()はPerlと同じように配列に、getdate()は連想配列に、date()は引数に好きなフォーマットを指定して文字列で取得、という使い分けになります。</p>
<p>※ちなみにこの記事は過去に別ブログで掲載していたものを若干加筆修正したものです。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sandalot.com/archives/219.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apple後継者 (PC Online)</title>
		<link>http://www.sandalot.com/archives/210.html</link>
		<comments>http://www.sandalot.com/archives/210.html#comments</comments>
		<pubDate>Tue, 30 Aug 2011 05:16:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[新着情報&業務日誌]]></category>

		<guid isPermaLink="false">http://www.sandalot.com/?p=210</guid>
		<description><![CDATA[IT系の方ならもうほとんどの方がご存知だと思います、Appleスティーブ・ジョブズ氏の辞任。 Apple後継者にティム・クック氏が最適な理由 後継者として、こちらもご存知のティム・クック氏が指名されています。今後のApp [...]]]></description>
			<content:encoded><![CDATA[<p>IT系の方ならもうほとんどの方がご存知だと思います、Appleスティーブ・ジョブズ氏の辞任。</p>
<p><a href="http://pc.nikkeibp.co.jp/article/news/20110829/1036497/" target="_blank">Apple後継者にティム・クック氏が最適な理由</a></p>
<p>後継者として、こちらもご存知のティム・クック氏が指名されています。今後のAppleがどのような方向に進んでいくのか期待ですね。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sandalot.com/archives/210.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ビジネスメールソフトの1位は</title>
		<link>http://www.sandalot.com/archives/185.html</link>
		<comments>http://www.sandalot.com/archives/185.html#comments</comments>
		<pubDate>Mon, 15 Aug 2011 04:52:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[新着情報&業務日誌]]></category>

		<guid isPermaLink="false">http://www.sandalot.com/?p=185</guid>
		<description><![CDATA[Gmailだそうです。下記のリンク先より。 突撃！グーグルさんに聞いてみたGmailの便利な使い方 (PCOnline) 当然と言えば当然かもしれません。すごく使いやすいですよね、他のメールクライアントに比べて。検索は早 [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Gmail</strong>だそうです。下記のリンク先より。</p>
<p><a href="http://pc.nikkeibp.co.jp/article/column/20110805/1033962/?set=ml" target="_blank">突撃！グーグルさんに聞いてみたGmailの便利な使い方 (PCOnline)</a></p>
<p>当然と言えば当然かもしれません。すごく使いやすいですよね、他のメールクライアントに比べて。検索は早いし、ラベル機能や優先トレイは便利だし、Labsで自分の好きな機能を追加する事が出来るし。</p>
<p>さすがに仕事用のメールアドレスを『〜@gmai.com』にする気は無いんですが、いくつか持っているメールアドレスをGmailに統合することで、メールの管理がすごく楽になっています。今や出来なきゃ話にならないレベルですが、携帯からのメールチェックももちろん可能なので、本当に便利だと思います。</p>
<p>少し心配なのは、やはりクラウドであることですね。このGmailにしてもGooogleカレンダーにしてもGoogleドキュメントにしても、ちょっと見られたくは無いな〜という程度のものから絶対に見られてはいけないものまであるわけで、セキュリティ面がやはり少し心配はあります。</p>
<p>と、ここまで書いてようやく気付いたんですが、恐らくここを見ている方のほとんどは既にGmailを使っていますよね〜?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.sandalot.com/archives/185.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

