<?xml version="1.0" encoding="utf-8" ?>

<rss version="2.0" 
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/"
   xmlns:content="http://purl.org/rss/1.0/modules/content/"
   xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule">
<channel>
    <title>MID [Serendipity Weblog] - PHP</title>
    <link>http://blog.till-daylight.org/</link>
    <description>MS-Kの適当なダイアリー</description>
    <dc:language>ja</dc:language>
    <generator>Serendipity 1.0 - http://www.s9y.org/</generator>
    <pubDate>Tue, 02 Dec 2008 06:11:11 GMT</pubDate>

    <image>
        <url>/templates/nm/img/feed.png</url>
        <title>RSS: MID [Serendipity Weblog] - PHP - MS-Kの適当なダイアリー</title>
        <link>http://blog.till-daylight.org/</link>
        <width>12</width>
        <height>12</height>
    </image>

<item>
    <title>PHP5でOOP演習：社長命令・起立！[3-6] 再掲</title>
    <link>http://blog.till-daylight.org/archives/237-PHP5OOP3-6.html</link>
            <category>PHP</category>
    
    <comments>http://blog.till-daylight.org/archives/237-PHP5OOP3-6.html#comments</comments>
    <wfw:comment>http://blog.till-daylight.org/wfwcomment.php?cid=237</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.till-daylight.org/rss.php?version=2.0&amp;type=comments&amp;cid=237</wfw:commentRss>
    

    <author>nospam@example.com (MS-K)</author>
    <content:encoded>
    &lt;p&gt;
Java本、&lt;a href=&quot;http://www.amazon.co.jp/dp/4798104183/&quot;  title=&quot;amazonで確認&quot;&gt;オブジェクト脳のつくり方&lt;/a&gt;の演習をPHP5に書き換えたものであり、
昔、はてダに書いたものの備忘録です。&lt;br /&gt;
はてダの記事が消えるまたは消した時のために保守投稿。
&lt;/p&gt;

&lt;p&gt;
&lt;em&gt;shain.php, tanto.php, shunin.php, bucho.php&lt;/em&gt;
は、&lt;a href=&quot;./archives/236-PHP5OOP3-5.html&quot; &gt;3-5&lt;/a&gt;と全く同じものを使用します。
&lt;/p&gt;

&lt;p&gt;
&lt;em&gt;shain_factory.php&lt;/em&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;class&lt;/span&gt; ShainFactory &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; shain_factory&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$param&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;co1&quot;&gt;// 基本給を1,000円に設定&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$kihon&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039;1000&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;null&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$sel1&lt;/span&gt; = &lt;span class=&quot;re0&quot;&gt;$sel2&lt;/span&gt; = &lt;span class=&quot;re0&quot;&gt;$sel3&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;co1&quot;&gt;// フォームのselectを利用して役職切り替え&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.php.net/isset&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;isset&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$_POST&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;param&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$_POST&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;param&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;co1&quot;&gt;// 担当&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;case&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;tanto&#039;&lt;/span&gt;:&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$sel1&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039; selected=&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;selected&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;new&lt;/span&gt; Tanto&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$kihon&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;co1&quot;&gt;// 主任&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;case&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shunin&#039;&lt;/span&gt;:&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$sel2&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039; selected=&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;selected&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;new&lt;/span&gt; Shunin&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$kihon&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;co1&quot;&gt;// 部長&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;case&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;bucho&#039;&lt;/span&gt;:&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$sel3&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039; selected=&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;selected&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;new&lt;/span&gt; Bucho&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$kihon&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;co1&quot;&gt;// フォームに必要な値を単に返しているだけ&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$sel1&lt;/span&gt;, &lt;span class=&quot;re0&quot;&gt;$sel2&lt;/span&gt;, &lt;span class=&quot;re0&quot;&gt;$sel3&lt;/span&gt;, &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;

&lt;p&gt;
&lt;em&gt;shacho.php&lt;/em&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;a href=&quot;http://www.php.net/header&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;header&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;Content-type: text/html; charset=UTF-8&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$myfile&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039;shacho.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;include_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;tanto.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;include_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shunin.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;include_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;bucho.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;include_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shain_factory.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;//&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// これらをShainFactoryクラスにまかせる。&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;//&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;coMULTI&quot;&gt;/*&lt;br /&gt;if(isset($_POST[&#039;param&#039;])) {&lt;br /&gt;&amp;#160; &amp;#160; switch($_POST[&#039;param&#039;]) {&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; // 担当&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; case &#039;tanto&#039;:&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; $sel1 = &#039; selected=\&#039;selected\&#039;&#039;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; $shain = new Tanto($kihon);&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; break;&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; // 主任&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; case &#039;shunin&#039;:&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; $sel2 = &#039; selected=\&#039;selected\&#039;&#039;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; $shain = new Shunin($kihon);&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; break;&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; // 部長&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; case &#039;bucho&#039;:&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; $sel3 = &#039; selected=\&#039;selected\&#039;&#039;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; $shain = new Bucho($kihon);&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; break;&lt;br /&gt;&amp;#160; &amp;#160; }&lt;br /&gt;}&lt;br /&gt;*/&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.php.net/isset&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;isset&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$_POST&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;param&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/list&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;list&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$sel1&lt;/span&gt;, &lt;span class=&quot;re0&quot;&gt;$sel2&lt;/span&gt;, &lt;span class=&quot;re0&quot;&gt;$sel3&lt;/span&gt;, &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; =&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; ShainFactory::&lt;span class=&quot;me2&quot;&gt;shain_factory&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$_POST&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;param&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// 切り替え用のフォーム生成&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$form&lt;/span&gt; =&amp;lt;&amp;lt;&amp;lt; EOD&lt;br /&gt;&amp;lt;form method=&lt;span class=&quot;st0&quot;&gt;&quot;post&quot;&lt;/span&gt; action=&lt;span class=&quot;st0&quot;&gt;&quot;{$myfile}&quot;&lt;/span&gt;&amp;gt;&lt;br /&gt;&amp;lt;select name=&lt;span class=&quot;st0&quot;&gt;&quot;param&quot;&lt;/span&gt;&amp;gt;&lt;br /&gt;&amp;lt;option value=&lt;span class=&quot;st0&quot;&gt;&quot;-&quot;&lt;/span&gt;&amp;gt;-&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;option value=&lt;span class=&quot;st0&quot;&gt;&quot;tanto&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$sel1&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&amp;gt;担当&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;option value=&lt;span class=&quot;st0&quot;&gt;&quot;shunin&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$sel2&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&amp;gt;主任&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;option value=&lt;span class=&quot;st0&quot;&gt;&quot;bucho&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$sel3&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&amp;gt;部長&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;/select&amp;gt;&lt;br /&gt;&amp;lt;input type=&lt;span class=&quot;st0&quot;&gt;&quot;submit&quot;&lt;/span&gt; value=&lt;span class=&quot;st0&quot;&gt;&quot;切り替え&quot;&lt;/span&gt;&amp;gt;&lt;br /&gt;&amp;lt;/form&amp;gt;&lt;br /&gt;&lt;br /&gt;EOD;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;//&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// HTML出力&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;//&lt;/span&gt;&lt;br /&gt;&lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;re0&quot;&gt;$form&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; != &lt;span class=&quot;kw2&quot;&gt;null&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; -&amp;gt; &lt;span class=&quot;me1&quot;&gt;standup&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$kyuryo&lt;/span&gt; = &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; -&amp;gt; &lt;span class=&quot;me1&quot;&gt;getKyuryo&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&quot;&amp;lt;p&amp;gt;給料は{$kyuryo}円です。&amp;lt;/p&amp;gt;&quot;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$bonus&lt;/span&gt; = &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; -&amp;gt; &lt;span class=&quot;me1&quot;&gt;getBonus&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&quot;&amp;lt;p&amp;gt;ボーナスは{$bonus}円です。&amp;lt;/p&amp;gt;&quot;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;else&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&#039;&amp;lt;p&amp;gt;役職未選択です。&amp;lt;/p&amp;gt;&#039;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;

&lt;p&gt;
shacho.phpの実行結果
&lt;/p&gt;

&lt;pre&gt;（初期状態 -）役職未選択です。

（担当の場合）担当が普通に起立しました。
    　　　　　給料は1000円です。
    　　　　　ボーナスは3000円です。

（主任の場合）主任がすばやく起立しました。
    　　　　　給料は2001円です。
    　　　　　ボーナスは3000円です。

（部長の場合）部長がだるそうに起立しました。
    　　　　　給料は3000円です。
    　　　　　ボーナスは3000円です。
&lt;/pre&gt;  
    </content:encoded>

    <pubDate>Tue, 02 Dec 2008 15:11:11 +0900</pubDate>
    <guid isPermaLink="false">http://blog.till-daylight.org/archives/237-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.1/jp/</creativeCommons:license>
</item>
<item>
    <title>PHP5でOOP演習：社長命令・起立！[3-5] 再掲</title>
    <link>http://blog.till-daylight.org/archives/236-PHP5OOP3-5.html</link>
            <category>PHP</category>
    
    <comments>http://blog.till-daylight.org/archives/236-PHP5OOP3-5.html#comments</comments>
    <wfw:comment>http://blog.till-daylight.org/wfwcomment.php?cid=236</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.till-daylight.org/rss.php?version=2.0&amp;type=comments&amp;cid=236</wfw:commentRss>
    

    <author>nospam@example.com (MS-K)</author>
    <content:encoded>
    &lt;p&gt;
Java本、&lt;a href=&quot;http://www.amazon.co.jp/dp/4798104183/&quot;  title=&quot;amazonで確認&quot;&gt;オブジェクト脳のつくり方&lt;/a&gt;の演習をPHP5に書き換えたものであり、
昔、はてダに書いたものの備忘録です。&lt;br /&gt;
はてダの記事が消えるまたは消した時のために保守投稿。
&lt;/p&gt;

&lt;p&gt;
演習3-4は&lt;a href=&quot;./archives/235-PHP5OOP3-3.html&quot; &gt;3-3&lt;/a&gt;に役職をひとつ追加するだけの練習問題なので省略して、3-5に進みます。
&lt;/p&gt;

&lt;p&gt;
&lt;em&gt;shain.php&lt;/em&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw5&quot;&gt;abstract&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;class&lt;/span&gt; Shain &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;__construct&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$kihonkyu&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span class=&quot;me1&quot;&gt;kihonkyu&lt;/span&gt; = &lt;span class=&quot;re0&quot;&gt;$kihonkyu&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; getKyuryo&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span class=&quot;me1&quot;&gt;kihonkyu&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;co1&quot;&gt;// ボーナスは役職を問わず一律&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; getBonus&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span class=&quot;me1&quot;&gt;kihonkyu&lt;/span&gt; * &lt;span class=&quot;nu0&quot;&gt;3&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;

&lt;p&gt;
&lt;em&gt;tanto.php&lt;/em&gt;&lt;small&gt; （shain.phpを継承。動作結果を変えているだけ）&lt;/small&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;require_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shain.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;class&lt;/span&gt; Tanto &lt;span class=&quot;kw5&quot;&gt;extends&lt;/span&gt; Shain &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; standup&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&#039;&amp;lt;p&amp;gt;担当が普通に起立しました。&amp;lt;/p&amp;gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; getKyuryo&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; &lt;a href=&quot;http://www.php.net/intval&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;intval&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span class=&quot;me1&quot;&gt;kihonkyu&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;

&lt;p&gt;
&lt;em&gt;shunin.php&lt;/em&gt;&lt;small&gt; （shain.phpを継承。動作結果を変えているだけ）&lt;/small&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;require_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shain.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;class&lt;/span&gt; Shunin &lt;span class=&quot;kw5&quot;&gt;extends&lt;/span&gt; Shain &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; standup&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&#039;&amp;lt;p&amp;gt;主任がすばやく起立しました。&amp;lt;/p&amp;gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; getKyuryo&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; &lt;a href=&quot;http://www.php.net/intval&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;intval&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span class=&quot;me1&quot;&gt;kihonkyu&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; * &lt;span class=&quot;nu0&quot;&gt;2&lt;/span&gt; + &lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;

&lt;p&gt;
&lt;em&gt;bucho.php&lt;/em&gt;&lt;small&gt; （shain.phpを継承。動作結果を変えているだけ）&lt;/small&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;require_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shain.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;class&lt;/span&gt; Bucho &lt;span class=&quot;kw5&quot;&gt;extends&lt;/span&gt; Shain &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; standup&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&#039;&amp;lt;p&amp;gt;部長がだるそうに起立しました。&amp;lt;/p&amp;gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; getKyuryo&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; &lt;a href=&quot;http://www.php.net/intval&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;intval&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span class=&quot;me1&quot;&gt;kihonkyu&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; * &lt;span class=&quot;nu0&quot;&gt;3&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;

&lt;p&gt;
&lt;em&gt;shacho.php&lt;/em&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;a href=&quot;http://www.php.net/header&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;header&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;Content-type: text/html; charset=UTF-8&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$myfile&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039;shacho.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;include_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;tanto.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;include_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shunin.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;include_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;bucho.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// フォームのselectを利用して役職切り替え&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// selectedの初期化&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$sel1&lt;/span&gt; = &lt;span class=&quot;re0&quot;&gt;$sel2&lt;/span&gt; = &lt;span class=&quot;re0&quot;&gt;$sel3&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039;&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// 基本給を1,000円に設定&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$kihon&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039;1000&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.php.net/isset&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;isset&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$_POST&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;param&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$_POST&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;param&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;co1&quot;&gt;// 担当&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;case&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;tanto&#039;&lt;/span&gt;:&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$sel1&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039; selected=&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;selected&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;new&lt;/span&gt; Tanto&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$kihon&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;co1&quot;&gt;// 主任&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;case&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shunin&#039;&lt;/span&gt;:&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$sel2&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039; selected=&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;selected&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;new&lt;/span&gt; Shunin&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$kihon&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;co1&quot;&gt;// 部長&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;case&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;bucho&#039;&lt;/span&gt;:&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$sel3&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039; selected=&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;selected&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;new&lt;/span&gt; Bucho&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$kihon&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// 切り替え用のフォーム生成&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$form&lt;/span&gt; =&amp;lt;&amp;lt;&amp;lt; EOD&lt;br /&gt;&amp;lt;form method=&lt;span class=&quot;st0&quot;&gt;&quot;post&quot;&lt;/span&gt; action=&lt;span class=&quot;st0&quot;&gt;&quot;{$myfile}&quot;&lt;/span&gt;&amp;gt;&lt;br /&gt;&amp;lt;select name=&lt;span class=&quot;st0&quot;&gt;&quot;param&quot;&lt;/span&gt;&amp;gt;&lt;br /&gt;&amp;lt;option value=&lt;span class=&quot;st0&quot;&gt;&quot;-&quot;&lt;/span&gt;&amp;gt;-&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;option value=&lt;span class=&quot;st0&quot;&gt;&quot;tanto&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$sel1&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&amp;gt;担当&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;option value=&lt;span class=&quot;st0&quot;&gt;&quot;shunin&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$sel2&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&amp;gt;主任&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;option value=&lt;span class=&quot;st0&quot;&gt;&quot;bucho&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$sel3&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&amp;gt;部長&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;/select&amp;gt;&lt;br /&gt;&amp;lt;input type=&lt;span class=&quot;st0&quot;&gt;&quot;submit&quot;&lt;/span&gt; value=&lt;span class=&quot;st0&quot;&gt;&quot;切り替え&quot;&lt;/span&gt;&amp;gt;&lt;br /&gt;&amp;lt;/form&amp;gt;&lt;br /&gt;&lt;br /&gt;EOD;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;//&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// HTML出力&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;//&lt;/span&gt;&lt;br /&gt;&lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;re0&quot;&gt;$form&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; != &lt;span class=&quot;kw2&quot;&gt;null&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; -&amp;gt; &lt;span class=&quot;me1&quot;&gt;standup&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$kyuryo&lt;/span&gt; = &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; -&amp;gt; &lt;span class=&quot;me1&quot;&gt;getKyuryo&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&quot;&amp;lt;p&amp;gt;給料は{$kyuryo}円です。&amp;lt;/p&amp;gt;&quot;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$bonus&lt;/span&gt; = &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; -&amp;gt; &lt;span class=&quot;me1&quot;&gt;getBonus&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&quot;&amp;lt;p&amp;gt;ボーナスは{$bonus}円です。&amp;lt;/p&amp;gt;&quot;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;else&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&#039;&amp;lt;p&amp;gt;役職未選択です。&amp;lt;/p&amp;gt;&#039;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;

&lt;p&gt;
shacho.phpの実行結果
&lt;/p&gt;

&lt;pre&gt;（初期状態 -）役職未選択です。

（担当の場合）担当が普通に起立しました。
    　　　　　給料は1000円です。
    　　　　　ボーナスは3000円です。

（主任の場合）主任がすばやく起立しました。
    　　　　　給料は2001円です。
    　　　　　ボーナスは3000円です。

（部長の場合）部長がだるそうに起立しました。
    　　　　　給料は3000円です。
    　　　　　ボーナスは3000円です。&lt;/pre&gt;  
    </content:encoded>

    <pubDate>Mon, 01 Dec 2008 13:12:07 +0900</pubDate>
    <guid isPermaLink="false">http://blog.till-daylight.org/archives/236-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.1/jp/</creativeCommons:license>
</item>
<item>
    <title>PHP5でOOP演習：社長命令・起立！[3-3] 再掲</title>
    <link>http://blog.till-daylight.org/archives/235-PHP5OOP3-3.html</link>
            <category>PHP</category>
    
    <comments>http://blog.till-daylight.org/archives/235-PHP5OOP3-3.html#comments</comments>
    <wfw:comment>http://blog.till-daylight.org/wfwcomment.php?cid=235</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.till-daylight.org/rss.php?version=2.0&amp;type=comments&amp;cid=235</wfw:commentRss>
    

    <author>nospam@example.com (MS-K)</author>
    <content:encoded>
    &lt;p&gt;
Java本、&lt;a href=&quot;http://www.amazon.co.jp/dp/4798104183/&quot;  title=&quot;amazonで確認&quot;&gt;オブジェクト脳のつくり方&lt;/a&gt;の演習をPHP5に書き換えたものであり、
昔、はてダに書いたものの備忘録です。&lt;br /&gt;
はてダの記事が消えるまたは消した時のために保守投稿。
&lt;/p&gt;

&lt;p&gt;
&lt;em&gt;shain.php&lt;/em&gt; （インターフェイス）
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw5&quot;&gt;interface&lt;/span&gt; Shain &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; standup&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; getKyuryo&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$kihonkyu&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;

&lt;p&gt;
&lt;em&gt;tanto.php&lt;/em&gt;&lt;small&gt; （shain.phpを継承。動作結果を変えているだけ）&lt;/small&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;require_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shain.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;class&lt;/span&gt; Tanto &lt;span class=&quot;kw5&quot;&gt;implements&lt;/span&gt; Shain &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; standup&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&#039;&amp;lt;p&amp;gt;担当が普通に起立しました。&amp;lt;/p&amp;gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; getKyuryo&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$kihonkyu&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;$kihonkyu&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;

&lt;p&gt;
&lt;em&gt;shunin.php&lt;/em&gt;&lt;small&gt; （shain.phpを継承。動作結果を変えているだけ）&lt;/small&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;require_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shain.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;class&lt;/span&gt; Shunin &lt;span class=&quot;kw5&quot;&gt;implements&lt;/span&gt; Shain &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; standup&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&#039;&amp;lt;p&amp;gt;主任がすばやく起立しました。&amp;lt;/p&amp;gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; getKyuryo&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$kihonkyu&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;$kihonkyu&lt;/span&gt;*&lt;span class=&quot;nu0&quot;&gt;2&lt;/span&gt;+&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;

&lt;p&gt;
&lt;em&gt;bucho.php&lt;/em&gt;&lt;small&gt; （shain.phpを継承。動作結果を変えているだけ）&lt;/small&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;require_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shain.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;class&lt;/span&gt; Bucho &lt;span class=&quot;kw5&quot;&gt;implements&lt;/span&gt; Shain &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; standup&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&#039;&amp;lt;p&amp;gt;部長がだるそうに起立しました。&amp;lt;/p&amp;gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; getKyuryo&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$kihonkyu&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;$kihonkyu&lt;/span&gt;*&lt;span class=&quot;nu0&quot;&gt;3&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;

&lt;p&gt;
&lt;em&gt;shacho.php&lt;/em&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;a href=&quot;http://www.php.net/header&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;header&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;Content-type: text/html; charset=UTF-8&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$myfile&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039;shacho.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;require_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;tanto.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;require_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shunin.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;require_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;bucho.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// フォームのselectを利用して役職切り替え&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// selectedの初期化&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$sel1&lt;/span&gt; = &lt;span class=&quot;re0&quot;&gt;$sel2&lt;/span&gt; = &lt;span class=&quot;re0&quot;&gt;$sel3&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039;&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.php.net/isset&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;isset&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$_POST&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;param&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$_POST&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;param&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;co1&quot;&gt;// 担当&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;case&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;tanto&#039;&lt;/span&gt;:&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$sel1&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039; selected=&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;selected&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;new&lt;/span&gt; Tanto&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;co1&quot;&gt;// 主任&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;case&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shunin&#039;&lt;/span&gt;:&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$sel2&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039; selected=&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;selected&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;new&lt;/span&gt; Shunin&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;co1&quot;&gt;// 部長&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;case&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;bucho&#039;&lt;/span&gt;:&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$sel3&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039; selected=&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;selected&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;new&lt;/span&gt; Bucho&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// 基本給を1,000円に設定&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$kihon&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039;1000&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// 切り替え用のフォーム生成&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$form&lt;/span&gt; =&amp;lt;&amp;lt;&amp;lt; EOD&lt;br /&gt;&amp;lt;form method=&lt;span class=&quot;st0&quot;&gt;&quot;post&quot;&lt;/span&gt; action=&lt;span class=&quot;st0&quot;&gt;&quot;{$myfile}&quot;&lt;/span&gt;&amp;gt;&lt;br /&gt;&amp;lt;select name=&lt;span class=&quot;st0&quot;&gt;&quot;param&quot;&lt;/span&gt;&amp;gt;&lt;br /&gt;&amp;lt;option value=&lt;span class=&quot;st0&quot;&gt;&quot;-&quot;&lt;/span&gt;&amp;gt;-&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;option value=&lt;span class=&quot;st0&quot;&gt;&quot;tanto&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$sel1&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&amp;gt;担当&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;option value=&lt;span class=&quot;st0&quot;&gt;&quot;shunin&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$sel2&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&amp;gt;主任&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;option value=&lt;span class=&quot;st0&quot;&gt;&quot;bucho&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$sel3&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&amp;gt;部長&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;/select&amp;gt;&lt;br /&gt;&amp;lt;input type=&lt;span class=&quot;st0&quot;&gt;&quot;submit&quot;&lt;/span&gt; value=&lt;span class=&quot;st0&quot;&gt;&quot;切り替え&quot;&lt;/span&gt;&amp;gt;&lt;br /&gt;&amp;lt;input type=&lt;span class=&quot;st0&quot;&gt;&quot;hidden&quot;&lt;/span&gt; name=&lt;span class=&quot;st0&quot;&gt;&quot;kihonkyu&quot;&lt;/span&gt; value=&lt;span class=&quot;st0&quot;&gt;&quot;{$kihon}&quot;&lt;/span&gt;&amp;gt; &lt;br /&gt;&amp;lt;/form&amp;gt;&lt;br /&gt;&lt;br /&gt;EOD;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;//&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// HTML出力&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;//&lt;/span&gt;&lt;br /&gt;&lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;re0&quot;&gt;$form&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; != &lt;span class=&quot;kw2&quot;&gt;null&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; -&amp;gt; &lt;span class=&quot;me1&quot;&gt;standup&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$kyuryo&lt;/span&gt; = &lt;a href=&quot;http://www.php.net/intval&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;intval&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; -&amp;gt; &lt;span class=&quot;me1&quot;&gt;getKyuryo&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$_POST&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;kihonkyu&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&quot;&amp;lt;p&amp;gt;給料は{$kyuryo}円です。&amp;lt;/p&amp;gt;&quot;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;else&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&#039;&amp;lt;p&amp;gt;役職未選択です。&amp;lt;/p&amp;gt;&#039;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;


&lt;p&gt;
shacho.phpの実行結果
&lt;/p&gt;

&lt;pre&gt;（初期状態 -）役職未選択です。

（担当の場合）担当が普通に起立しました。給料は1000円です。

（主任の場合）主任がすばやく起立しました。給料は2001円です。

（部長の場合）部長がだるそうに起立しました。給料は3000円です。&lt;/pre&gt;  
    </content:encoded>

    <pubDate>Mon, 01 Dec 2008 12:31:23 +0900</pubDate>
    <guid isPermaLink="false">http://blog.till-daylight.org/archives/235-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.1/jp/</creativeCommons:license>
</item>
<item>
    <title>PHP5でOOP演習：社長命令・起立！[3-2] 再掲</title>
    <link>http://blog.till-daylight.org/archives/234-PHP5OOP3-2.html</link>
            <category>PHP</category>
    
    <comments>http://blog.till-daylight.org/archives/234-PHP5OOP3-2.html#comments</comments>
    <wfw:comment>http://blog.till-daylight.org/wfwcomment.php?cid=234</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.till-daylight.org/rss.php?version=2.0&amp;type=comments&amp;cid=234</wfw:commentRss>
    

    <author>nospam@example.com (MS-K)</author>
    <content:encoded>
    &lt;p&gt;
Java本、&lt;a href=&quot;http://www.amazon.co.jp/dp/4798104183/&quot;  title=&quot;amazonで確認&quot;&gt;オブジェクト脳のつくり方&lt;/a&gt;の演習をPHP5に書き換えたものであり、
昔、はてダに書いたものの備忘録です。&lt;br /&gt;
はてダの記事が消えるまたは消した時のために保守投稿。
&lt;/p&gt;

&lt;p&gt;
&lt;em&gt;shain.php&lt;/em&gt; （インターフェイス）
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw5&quot;&gt;interface&lt;/span&gt; Shain &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; standup&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;

&lt;p&gt;
&lt;em&gt;tanto.php&lt;/em&gt;&lt;small&gt; （shain.phpを継承。動作結果を変えているだけ）&lt;/small&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;require_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shain.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;class&lt;/span&gt; Tanto &lt;span class=&quot;kw5&quot;&gt;implements&lt;/span&gt; Shain &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; standup&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&#039;&amp;lt;p&amp;gt;担当が普通に起立しました。&amp;lt;/p&amp;gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;

&lt;p&gt;
&lt;em&gt;shunin.php&lt;/em&gt;&lt;small&gt; （shain.phpを継承。動作結果を変えているだけ）&lt;/small&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;require_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shain.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;class&lt;/span&gt; Shunin &lt;span class=&quot;kw5&quot;&gt;implements&lt;/span&gt; Shain &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; standup&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&#039;&amp;lt;p&amp;gt;主任がすばやく起立しました。&amp;lt;/p&amp;gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;

&lt;p&gt;
&lt;em&gt;bucho.php&lt;/em&gt;&lt;small&gt; （shain.phpを継承。動作結果を変えているだけ）&lt;/small&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;require_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shain.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;class&lt;/span&gt; Bucho &lt;span class=&quot;kw5&quot;&gt;implements&lt;/span&gt; Shain &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; standup&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&#039;&amp;lt;p&amp;gt;部長がだるそうに起立しました。&amp;lt;/p&amp;gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;


&lt;p&gt;
&lt;em&gt;shacho.php&lt;/em&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;a href=&quot;http://www.php.net/header&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;header&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;Content-type: text/html; charset=UTF-8&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$myfile&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039;shacho.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;require_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;tanto.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;require_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shunin.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;require_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;bucho.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// フォームのselectを利用して役職切り替え&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// selectedの初期化&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$sel1&lt;/span&gt; = &lt;span class=&quot;re0&quot;&gt;$sel2&lt;/span&gt; = &lt;span class=&quot;re0&quot;&gt;$sel3&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039;&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.php.net/isset&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;isset&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$_POST&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;param&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;switch&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$_POST&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;param&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;co1&quot;&gt;// 担当&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;case&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;tanto&#039;&lt;/span&gt;:&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$sel1&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039; selected=&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;selected&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;new&lt;/span&gt; Tanto&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;co1&quot;&gt;// 主任&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;case&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;shunin&#039;&lt;/span&gt;:&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$sel2&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039; selected=&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;selected&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;new&lt;/span&gt; Shunin&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;co1&quot;&gt;// 部長&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;case&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;bucho&#039;&lt;/span&gt;:&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$sel3&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&#039; selected=&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;selected&lt;span class=&quot;es0&quot;&gt;\&#039;&lt;/span&gt;&#039;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;new&lt;/span&gt; Bucho&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;kw1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// 切り替え用のフォーム生成&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$form&lt;/span&gt; =&amp;lt;&amp;lt;&amp;lt; EOD&lt;br /&gt;&amp;lt;form method=&lt;span class=&quot;st0&quot;&gt;&quot;post&quot;&lt;/span&gt; action=&lt;span class=&quot;st0&quot;&gt;&quot;$myfile&quot;&lt;/span&gt;&amp;gt;&lt;br /&gt;&amp;lt;select name=&lt;span class=&quot;st0&quot;&gt;&quot;param&quot;&lt;/span&gt;&amp;gt;&lt;br /&gt;&amp;lt;option value=&lt;span class=&quot;st0&quot;&gt;&quot;-&quot;&lt;/span&gt;&amp;gt;-&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;option value=&lt;span class=&quot;st0&quot;&gt;&quot;tanto&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$sel1&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&amp;gt;担当&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;option value=&lt;span class=&quot;st0&quot;&gt;&quot;shunin&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$sel2&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&amp;gt;主任&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;option value=&lt;span class=&quot;st0&quot;&gt;&quot;bucho&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$sel3&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&amp;gt;部長&amp;lt;/option&amp;gt;&lt;br /&gt;&amp;lt;/select&amp;gt;&lt;br /&gt;&amp;lt;input type=&lt;span class=&quot;st0&quot;&gt;&quot;submit&quot;&lt;/span&gt; value=&lt;span class=&quot;st0&quot;&gt;&quot;切り替え&quot;&lt;/span&gt; /&amp;gt;&lt;br /&gt;&amp;lt;/form&amp;gt;&lt;br /&gt;&lt;br /&gt;EOD;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;//&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// HTML出力&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;//&lt;/span&gt;&lt;br /&gt;&lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;re0&quot;&gt;$form&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; != &lt;span class=&quot;kw2&quot;&gt;null&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$shain&lt;/span&gt; -&amp;gt; &lt;span class=&quot;me1&quot;&gt;standup&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;else&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&#039;&amp;lt;p&amp;gt;役職未選択です。&amp;lt;/p&amp;gt;&#039;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;


&lt;p&gt;
shacho.phpの実行結果
&lt;/p&gt;

&lt;pre&gt;（初期状態 -）役職未選択です。

（担当の場合）担当が普通に起立しました。

（主任の場合）主任がすばやく起立しました。

（部長の場合）部長がだるそうに起立しました。&lt;/pre&gt;  
    </content:encoded>

    <pubDate>Fri, 28 Nov 2008 14:55:51 +0900</pubDate>
    <guid isPermaLink="false">http://blog.till-daylight.org/archives/234-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.1/jp/</creativeCommons:license>
</item>
<item>
    <title>PHP5でOOP演習：社長命令・起立！[3-1] 再掲</title>
    <link>http://blog.till-daylight.org/archives/233-PHP5OOP3-1.html</link>
            <category>PHP</category>
    
    <comments>http://blog.till-daylight.org/archives/233-PHP5OOP3-1.html#comments</comments>
    <wfw:comment>http://blog.till-daylight.org/wfwcomment.php?cid=233</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.till-daylight.org/rss.php?version=2.0&amp;type=comments&amp;cid=233</wfw:commentRss>
    

    <author>nospam@example.com (MS-K)</author>
    <content:encoded>
    &lt;p&gt;
Java本、&lt;a href=&quot;http://www.amazon.co.jp/dp/4798104183/&quot;  title=&quot;amazonで確認&quot;&gt;オブジェクト脳のつくり方&lt;/a&gt;の演習をPHP5に書き換えたものであり、
昔、はてダに書いたものの備忘録です。&lt;br /&gt;
はてダの記事が消えるまたは消した時のために保守投稿。
&lt;/p&gt;

&lt;p&gt;
&lt;em&gt;ningen.php&lt;/em&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;class&lt;/span&gt; Ningen &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;private&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;$name&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;private&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;$shincho&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;__construct&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;re0&quot;&gt;$name&lt;/span&gt;, &lt;span class=&quot;re0&quot;&gt;$shincho&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$this&lt;/span&gt; -&amp;gt; &lt;span class=&quot;me1&quot;&gt;name&lt;/span&gt; = &lt;span class=&quot;re0&quot;&gt;$name&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;span class=&quot;re0&quot;&gt;$this&lt;/span&gt; -&amp;gt; &lt;span class=&quot;me1&quot;&gt;shincho&lt;/span&gt; = &lt;span class=&quot;re0&quot;&gt;$shincho&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; taberu&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&quot;&amp;lt;p&amp;gt;食べています。&amp;lt;/p&amp;gt;&lt;span class=&quot;es0&quot;&gt;\n&lt;/span&gt;&quot;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;kw4&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw2&quot;&gt;function&lt;/span&gt; neru&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;a href=&quot;http://www.php.net/echo&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;echo&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;st0&quot;&gt;&quot;&amp;lt;p&amp;gt;寝ています。&amp;lt;/p&amp;gt;&lt;span class=&quot;es0&quot;&gt;\n&lt;/span&gt;&quot;&lt;/span&gt;;&lt;br /&gt;&amp;#160; &amp;#160; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;

&lt;p&gt;
&lt;em&gt;manager.php&lt;/em&gt;
&lt;/p&gt;

&lt;div class=&quot;php&quot; style=&quot;text-align: left&quot;&gt;&lt;span class=&quot;kw2&quot;&gt;&amp;lt;?php&lt;/span&gt;&lt;br /&gt;&lt;a href=&quot;http://www.php.net/header&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;header&lt;/span&gt;&lt;/a&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;Content-type: text/html; charset=UTF-8&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;kw1&quot;&gt;require_once&lt;/span&gt; &lt;span class=&quot;st0&quot;&gt;&#039;ningen.php&#039;&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;span class=&quot;co1&quot;&gt;// コメント&lt;/span&gt;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$ningen&lt;/span&gt; = &lt;span class=&quot;kw2&quot;&gt;new&lt;/span&gt; Ningen&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&#039;俺&#039;&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&#039;180&#039;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$ningen&lt;/span&gt; -&amp;gt; &lt;span class=&quot;me1&quot;&gt;taberu&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;re0&quot;&gt;$ningen&lt;/span&gt; -&amp;gt; &lt;span class=&quot;me1&quot;&gt;neru&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;&lt;br /&gt;&lt;span class=&quot;kw2&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;



&lt;p&gt;
manager.phpの実行結果
&lt;/p&gt;

&lt;pre&gt;食べています。

寝ています。
&lt;/pre&gt;  
    </content:encoded>

    <pubDate>Fri, 28 Nov 2008 11:07:57 +0900</pubDate>
    <guid isPermaLink="false">http://blog.till-daylight.org/archives/233-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.1/jp/</creativeCommons:license>
</item>
<item>
    <title>WordPressでパスワード忘れの時はMD5化して突っ込む</title>
    <link>http://blog.till-daylight.org/archives/217-WordPressMD5.html</link>
            <category>PHP</category>
            <category>MySQL</category>
    
    <comments>http://blog.till-daylight.org/archives/217-WordPressMD5.html#comments</comments>
    <wfw:comment>http://blog.till-daylight.org/wfwcomment.php?cid=217</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.till-daylight.org/rss.php?version=2.0&amp;type=comments&amp;cid=217</wfw:commentRss>
    

    <author>nospam@example.com (MS-K)</author>
    <content:encoded>
    &lt;p&gt;
ちょっときっかけがあったので、初めてWordPressに触れてみました。&lt;br /&gt;
もちろん初めはローカルマシンにインストールしての検証です。&lt;br /&gt;
で、サクっと初期ユーザー名と初期パスワードを忘れてしまいました &lt;img src=&quot;http://blog.till-daylight.org/templates/nm/img/emoticons/cool.png&quot; alt=&quot;8-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; &lt;br /&gt;
さらに！ローカルWindowsマシンなので、&lt;br /&gt;
パスワードをメールで受け取ることもできません。←ここネック（笑）
&lt;/p&gt;

&lt;p&gt;
まず最初にパスワードを確認。&lt;br /&gt;
&lt;em&gt;wp_users&lt;/em&gt;テーブルのadminの&lt;em&gt;user_pass &lt;/em&gt;なんですが暗号化されているので読めません。
&lt;/p&gt;

&lt;p&gt;
ということで、これを消すことから試しました。&lt;br /&gt;
&lt;em&gt;wp_users&lt;/em&gt;テーブルのadminの&lt;em&gt;user_pass &lt;/em&gt;を空にしてログイン。&lt;br /&gt;
空PWは拒否されてしまい玉砕。&lt;br /&gt;
ここで、&lt;em&gt;忘れちゃいけないと思って、IDとPWをテキストファイルに保存していたこと&lt;/em&gt;を思い出しましたが、
後の祭り &lt;img src=&quot;http://blog.till-daylight.org/templates/nm/img/emoticons/laugh.png&quot; alt=&quot;:-D&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; &lt;br /&gt;
&lt;/p&gt;

&lt;p&gt;
次。&lt;br /&gt;
wp-login.phpを読むと、137行目に以下の記述があるため&lt;br /&gt;
&lt;strong&gt;// Now insert the new md5 key into the db&lt;/strong&gt;&lt;br /&gt;
暗号化はMD5ということでおそらく確定です。
&lt;/p&gt;

&lt;p&gt;
適当なパスワードをMD5暗号化ででっちあげて、&lt;em&gt;wp_users&lt;/em&gt;テーブルのadminの&lt;em&gt;user_pass &lt;/em&gt;に突っ込みます。
&lt;big&gt;OK&lt;/big&gt; &lt;img src=&quot;http://blog.till-daylight.org/templates/nm/img/emoticons/laugh.png&quot; alt=&quot;:-D&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; 
&lt;/p&gt;


&lt;pre&gt;&lt;code&gt;
&amp;lt;?php
/**
 * MD5生成
 * ついでにSHA1も生成して試す
 */
ini_set(&quot;default_charset&quot;, &quot;UTF-8&quot;);
ini_set(&quot;mbstring.internal_encoding&quot;, &quot;UTF-8&quot;);

// 適当にPWを設定
$pw = &quot;tekitouna-pw&quot;;
// MD5で暗号化
$pwmd5 = md5($pw);
// 一応SHA1も試したけどNGでした
$pwsha = sha1($pw);

echo &amp;lt;&amp;lt;&amp;lt; EOD
&amp;lt;p&amp;gt;生pw：$pw&amp;lt;/p&amp;gt;

&amp;lt;p&amp;gt;
// このMD5をuser_passに入れる。
MD5   : $pwmd5&amp;lt;br /&amp;gt;
SHA1  : $pwsha&amp;lt;br /&amp;gt;
&amp;lt;/p&amp;gt;
EOD;

// 念のため比較しておく
$md5result = (md5($pw) === $pwmd5) ? &#039;OK&#039; : &#039;FALSE&#039;;
$sharesult = (sha1($pw) === $pwsha) ? &#039;OK&#039; : &#039;FALSE&#039;;

echo &amp;lt;&amp;lt;&amp;lt; EOD

&amp;lt;hr /&amp;gt;

&amp;lt;p&amp;gt;
MD5 Result : $md5result&amp;lt;br /&amp;gt;
SHA1 Result : $sharesult
&amp;lt;/p&amp;gt;
EOD;
?&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;hr /&gt;

&lt;p&gt;
&lt;em&gt;結果&lt;/em&gt;
&lt;/p&gt;

&lt;p&gt;生pw：tekitouna-pw&lt;/p&gt;

&lt;p&gt;
MD5   : 39acf3df4d5520ce4c4c1125207b0d53&lt;br /&gt;
SHA1  : db8740a3b5616c45e383dd36fbe5913edd852efc&lt;br /&gt;
&lt;/p&gt;
&lt;hr /&gt;

&lt;p&gt;
MD5 Result : OK&lt;br /&gt;
SHA1 Result : OK
&lt;/p&gt;  
    </content:encoded>

    <pubDate>Wed, 30 Jul 2008 11:53:53 +0900</pubDate>
    <guid isPermaLink="false">http://blog.till-daylight.org/archives/217-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.1/jp/</creativeCommons:license>
</item>
<item>
    <title>CMYK-RGB-Hex 変換ツール作ってみました</title>
    <link>http://blog.till-daylight.org/archives/209-CMYK-RGB-Hex.html</link>
            <category>PHP</category>
    
    <comments>http://blog.till-daylight.org/archives/209-CMYK-RGB-Hex.html#comments</comments>
    <wfw:comment>http://blog.till-daylight.org/wfwcomment.php?cid=209</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.till-daylight.org/rss.php?version=2.0&amp;type=comments&amp;cid=209</wfw:commentRss>
    

    <author>nospam@example.com (MS-K)</author>
    <content:encoded>
    &lt;div class=&quot;entry_img_left&quot;&gt;
&lt;a href=&quot;http://lab.till-daylight.org/colors/&quot;&gt;
&lt;img width=&#039;250&#039; height=&#039;204&#039; src=&quot;http://blog.till-daylight.org/uploads/img/colorconverter.jpg&quot; alt=&quot;CMYK-RGB-Hex Color Data Converter&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;
ずっと手続き型のプログラミングしかしていなくて、OOPについては過去に一度勉強したんですが、実際に作らないと全然覚えられないわけでして、実践勉強の第一弾として作ってみました。
&lt;/p&gt;

&lt;p&gt;
色変換のサイトは結構あると思いますが、CMYKとRGBと16進表記を一度に変換してくれるところは、たぶん無いんじゃないかと思います（自分では見つけられませんでした）。
&lt;/p&gt;

&lt;p&gt;
アルゴリズムについては、
&lt;a href=&quot;http://image-d.isp.jp/&quot; &gt;ISP imaging-developers - システム計画研究所 画像処理研究プロジェクト&lt;/a&gt;の&lt;a href=&quot;http://image-d.isp.jp/commentary/color_cformula/&quot; &gt;色変換式集&lt;/a&gt;を参考にさせていただき、
それを独自に拡張しています。
&lt;/p&gt;

&lt;p&gt;
例によってソースを公開しているのですが、結構恥ずかしい実装のような気がしています。&lt;br /&gt;
なにせ初めてのクラス化ですので &lt;img src=&quot;http://blog.till-daylight.org/templates/nm/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; &lt;br /&gt;
突っ込み歓迎です。
&lt;/p&gt;  
    </content:encoded>

    <pubDate>Fri, 30 May 2008 16:01:03 +0900</pubDate>
    <guid isPermaLink="false">http://blog.till-daylight.org/archives/209-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.1/jp/</creativeCommons:license>
</item>
<item>
    <title>Daylight Gallery（PHP＋GDフォトギャラリー）を作リ始めました</title>
    <link>http://blog.till-daylight.org/archives/207-Daylight-GalleryPHPGD.html</link>
            <category>PHP</category>
    
    <comments>http://blog.till-daylight.org/archives/207-Daylight-GalleryPHPGD.html#comments</comments>
    <wfw:comment>http://blog.till-daylight.org/wfwcomment.php?cid=207</wfw:comment>

    <slash:comments>12</slash:comments>
    <wfw:commentRss>http://blog.till-daylight.org/rss.php?version=2.0&amp;type=comments&amp;cid=207</wfw:commentRss>
    

    <author>nospam@example.com (MS-K)</author>
    <content:encoded>
    &lt;div class=&quot;entry_img_left&quot;&gt;
&lt;a href=&#039;http://lab.till-daylight.org/album/&#039;&gt;
&lt;img width=&#039;250&#039; height=&#039;203&#039; src=&quot;http://blog.till-daylight.org/uploads/img/dgallery.thumb.jpg&quot; alt=&quot;&quot; /&gt;
&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;
ふとフォトギャラリーを使いたいと思い、少し時間が取れたので探し回ったのですが、
DBを使ってAjaxバリバリなものはかなり重いことが多いし、汎用性を求めるとやはりDB無し、ということで気に入るものがなかなか見つからなくて、結局作ることにしました。
&lt;/p&gt;

&lt;p&gt;
開発1日目なので、粗があるとは思いますが、思い切って公開してしまいます。&lt;br /&gt;
開発が進むたびに公開ソースも更新していくので、突っ込みを希望します。
&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://lab.till-daylight.org/album/&quot; &gt;http://lab.till-daylight.org/album/&lt;/a&gt;&lt;/p&gt;

&lt;br style=&quot;clear: left;&quot; /&gt;

&lt;h3&gt;特徴&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;汎用性重視のためデータベースは不使用&lt;/li&gt;
&lt;li&gt;PHP5での開発だがPHP4でも動くはず&lt;/li&gt;
&lt;li&gt;拡大用画像とサムネールをFTPするだけで表示&lt;/li&gt;
&lt;li&gt;
サムネール作成が面倒な場合、自動生成も可能（ファイル数、ファイルサイズ、サーバ性能による。要GDモジュール）
&lt;p&gt;
開発用Windowsマシンでの検証&lt;br /&gt;
・スペック&lt;br /&gt;
　CPU/AMD Sempron2600+、RAM/約1.26GB、HDD/ATA133&lt;br /&gt;
・php.ini&lt;br /&gt;
　max_execution_time = 60&lt;br /&gt;
　max_input_time = 60&lt;br /&gt;
　memory_limit = 64M
&lt;/p&gt;

&lt;p&gt;
・拡大用画像ファイル（Silkypix Jpeg Photographyにて縮小現像）&lt;br /&gt;
　各1280x852px ×18ファイル（計4.29MB）
&lt;/p&gt;

&lt;p&gt;
・結果&lt;br /&gt;
　6.9248399734497秒
&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;最低限必要な設定箇所はたった2箇所（画像保存ディレクトリ名）&lt;/li&gt;
&lt;li&gt;XHTML＋CSS2による実装のため、デザインカスタマイズは容易&lt;/li&gt;
&lt;li&gt;テンプレートエンジン未使用&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://serennz.sakura.ne.jp/toybox/lightbox/?ja&quot;&gt;Lightbox Plus&lt;/a&gt; によるエフェクト（他のエフェクトは好みではないので未対応／改造は可能）&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
※手続き型しか知らないので、プログラミングの参考には&lt;em&gt;ならない&lt;/em&gt;と思います… &lt;img src=&quot;http://blog.till-daylight.org/templates/nm/img/emoticons/tongue.png&quot; alt=&quot;:-P&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; 
&lt;/p&gt;  
    </content:encoded>

    <pubDate>Thu, 24 Apr 2008 14:20:48 +0900</pubDate>
    <guid isPermaLink="false">http://blog.till-daylight.org/archives/207-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.1/jp/</creativeCommons:license>
</item>
<item>
    <title>ひとくち予報のRSSまたはYAHOO!天気情報のRSSを利用して週間天気予報を表示させる。がボツったので</title>
    <link>http://blog.till-daylight.org/archives/195-RSSYAHOO!RSS.html</link>
            <category>PHP</category>
    
    <comments>http://blog.till-daylight.org/archives/195-RSSYAHOO!RSS.html#comments</comments>
    <wfw:comment>http://blog.till-daylight.org/wfwcomment.php?cid=195</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.till-daylight.org/rss.php?version=2.0&amp;type=comments&amp;cid=195</wfw:commentRss>
    

    <author>nospam@example.com (MS-K)</author>
    <content:encoded>
    &lt;p&gt;
「&lt;a href=&quot;http://blog.till-daylight.org/archives/191-PHP4xml.html&quot; &gt;PHP4でxmlパースして天気予報&lt;/a&gt;」で、RSSを配列に突っ込んで天気予報を表示させる、というのを作っていたのですが、
&lt;a href=&quot;http://www.weathermap.co.jp/hitokuchi_rss/&quot;&gt;ひとくち予報&lt;/a&gt;さんも
&lt;a href=&quot;http://weather.yahoo.co.jp/weather/jp/hokkaido.html&quot;&gt;YAHOO!天気情報&lt;/a&gt;さんも、ともに
法人での利用許可をくれませんでした &lt;img src=&quot;http://blog.till-daylight.org/templates/nm/img/emoticons/cry.png&quot; alt=&quot;:&#039;(&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; &lt;br /&gt;
ひとくち予報さんは60,000円（/月？だったかな。もう忘れました）でOKですけど、却下しました &lt;img src=&quot;http://blog.till-daylight.org/templates/nm/img/emoticons/cool.png&quot; alt=&quot;8-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; 
&lt;/p&gt;

&lt;p&gt;
ということで、使いみちがなくなってしまったので、ソースを公開したいと思います。&lt;br /&gt;
ともに北海道しか設定していませんが、他地域の書き換えは簡単に可能です。
&lt;/p&gt;

&lt;p&gt;
かなりベタな作りでお恥ずかしいのですが、&lt;br /&gt;
誰かがこれらを改良してもっと良いものを作ってくれると嬉しいかな。
&lt;/p&gt;

&lt;p&gt;
ひとくち予報バージョン&lt;br /&gt;
&lt;a href=&quot;http://till-daylight.org/weather/hitokuchiWeather_test.php&quot; &gt;http://till-daylight.org/weather/hitokuchiWeather_test.php&lt;/a&gt;&lt;br /&gt;
YAHOO!天気情報バージョン&lt;br /&gt;
&lt;a href=&quot;http://till-daylight.org/weather/yahooWeather_test.php&quot; &gt;http://till-daylight.org/weather/yahooWeather_test.php&lt;/a&gt;
&lt;/p&gt;

&lt;p&gt;
なお、RSSを配列に突っ込む必須クラスについては
&lt;a href=&quot;http://php.atseason.com/?eid=620142&quot;&gt;PHPのテクメモさん「XMLを配列に・・・これが最適解かも」&lt;/a&gt;で公開してくれています。
&lt;/p&gt;  
    </content:encoded>

    <pubDate>Mon, 22 Oct 2007 14:51:00 +0900</pubDate>
    <guid isPermaLink="false">http://blog.till-daylight.org/archives/195-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.1/jp/</creativeCommons:license>
</item>
<item>
    <title>PHP4でxmlパースして天気予報</title>
    <link>http://blog.till-daylight.org/archives/191-PHP4xml.html</link>
            <category>PHP</category>
    
    <comments>http://blog.till-daylight.org/archives/191-PHP4xml.html#comments</comments>
    <wfw:comment>http://blog.till-daylight.org/wfwcomment.php?cid=191</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.till-daylight.org/rss.php?version=2.0&amp;type=comments&amp;cid=191</wfw:commentRss>
    

    <author>nospam@example.com (MS-K)</author>
    <content:encoded>
    &lt;p&gt;
ここのサーバはPHP5なので、simpleXmlを使えるのですが、実際に天気予報を表示させるサーバがPHP4なので、さてどうしようかな、面倒くさいな、などと思いながらググっていましたところ「&lt;a href=&quot;http://php.atseason.com/?eid=620142&quot; &gt;XMLを配列に・・・これが最適解かも&lt;/a&gt;」などというまさにタイムリーなエントリを発見しました。&lt;br /&gt;
ってここ「&lt;a href=&quot;http://php.atseason.com/&quot; &gt;PHPのテクメモ&lt;/a&gt;」さんですが、以前にもコメントでおじゃましたことがあったような &lt;img src=&quot;http://blog.till-daylight.org/templates/nm/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; 
&lt;/p&gt;

&lt;p&gt;
ってここ、エントリタイトルのキャッチ画像が素敵すぎです &lt;img src=&quot;http://blog.till-daylight.org/templates/nm/img/emoticons/cool.png&quot; alt=&quot;8-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; 
&lt;/p&gt;

&lt;blockquote cite=&quot;http://php.atseason.com/?eid=620142&quot; title=&quot;XMLを配列に・・・これが最適解かも：PHPのテクメモ&quot;&gt;
xml_parse_into_structすればキーと値の関係がわかるわけで、これを使えば力技で配列に格納できるからだ。
しかし、その苦労をしなくてすんだ。その力技をそのまま記述してくれているスクリプトに出会うことが出来た。
&lt;/blockquote&gt;

&lt;p&gt;
予報データは&lt;a href=&quot;http://www.weathermap.co.jp/&quot; &gt;ウェザーマップ&lt;/a&gt;さんで提供してくれている「&lt;a href=&quot;http://www.weathermap.co.jp/hitokuchi_rss/&quot; &gt;ひとくち予報 in Feed&lt;/a&gt;」を利用します。&lt;br /&gt;
ここの予報は他サイトと違って支庁分けしているので、非常にわかりやすいからです。
&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;// xmlデータを配列にするクラス
// ファイル名は変えています。
&lt;em&gt;require &#039;xmlToArray_class.php&#039;;&lt;/em&gt;

// 予報データ取得
// 別途キャッシュ生成用の関数を作っています。
// キャッシュが在りかつ新しければ$feeduri はキャッシュデータ
// そうでなければ「ひとくち予報 in Feed」さんのRSS
// 北海道内16箇所のデータを必要としているのでURIはDBから指定します。
//
// 決め打ちでいいのなら
// $xml_data  = file_get_contents(&#039;http://feeds.feedburner.jp/hitokuchi_1400&#039;);
// のように（ちなみに1400は北海道石狩です）
&lt;em&gt;$xml_data  = file_get_contents($feeduri);&lt;/em&gt;

// xmlデータを配列に格納
&lt;em&gt;$xmlObj    = new XmlToArray($xml_data);
$arrayData = $xmlObj-&gt;createArray();&lt;/em&gt;

// 週間天気予報のみ必要なので
$showdata = $arrayData[&#039;rss&#039;][&#039;channel&#039;][0][&#039;item&#039;][5];
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;
表示させるためにはもちろん自分で色々やらないといけませんが、
xmlデータを配列に突っ込む作業は、上記白抜きしたたった4行で済みますので、
えらい楽です。
&lt;/p&gt;

&lt;div class=&quot;entry_img&quot;&gt;
&lt;a href=&#039;http://blog.till-daylight.org/test/weather_test.php&#039;&gt;&lt;img width=&#039;600&#039; height=&#039;131&#039; src=&quot;http://blog.till-daylight.org/uploads/img/weather.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;

&lt;p&gt;
こんな感じに表示できます。&lt;br /&gt;
クリックするとデモページを確認できます（デモでは表示地域を決め打ちしています）。
&lt;/p&gt;

&lt;p&gt;
今のところ、凡例（晴れ時々くもり 等）に自信無しです。
自分で作ったのは40パターンの凡例とアイコンですが、もっとあるとすると、今後アイコン不明なパターンが出てくる可能性が多々あります。
&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;
&lt;em&gt;2008-09-19 追記&lt;/em&gt;&lt;br /&gt;
ソースとサンプルを公開していますので&lt;a href=&quot;./archives/195-RSSYAHOO!RSS.html&quot; title=&quot;後日談です&quot;&gt;「ひとくち予報のRSSまたはYAHOO!天気情報のRSSを利用して週間天気予報を表示させる。がボツったので」&lt;/a&gt;もどうぞ。
&lt;/p&gt;

&lt;p&gt;
&lt;em&gt;2008-09-25 追記&lt;/em&gt;&lt;br /&gt;
上記デモページのURIを修正しました。&lt;br /&gt;
アクセスできなかった方にはお詫び申し上げます。
&lt;/p&gt;  
    </content:encoded>

    <pubDate>Thu, 13 Sep 2007 12:26:33 +0900</pubDate>
    <guid isPermaLink="false">http://blog.till-daylight.org/archives/191-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.1/jp/</creativeCommons:license>
</item>
<item>
    <title>Zen Cart しんどい</title>
    <link>http://blog.till-daylight.org/archives/180-Zen-Cart.html</link>
            <category>PHP</category>
    
    <comments>http://blog.till-daylight.org/archives/180-Zen-Cart.html#comments</comments>
    <wfw:comment>http://blog.till-daylight.org/wfwcomment.php?cid=180</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.till-daylight.org/rss.php?version=2.0&amp;type=comments&amp;cid=180</wfw:commentRss>
    

    <author>nospam@example.com (MS-K)</author>
    <content:encoded>
    &lt;p&gt;
わけあって&lt;a href=&quot;http://www.zen-cart.jp/&quot;  title=&quot;Zen Cart japan&quot;&gt;Zen Cart&lt;/a&gt;をいろいろいじっているのですが、EUCのプログラムはやはりややこしいです。&lt;br /&gt;
はじめはZen CartそのものをUTF8化してそれなりに動いた感があったのですが、どうも怪しい。。。&lt;br /&gt;
2日ほど試してみて、素直にEUCで動かすことにしました。
&lt;/p&gt;

&lt;p&gt;
そうなると今度はUTF8に設定しているMySQLとの兼ね合いがとれなく、一見きちんと動いているのですがDBから引っぱったデータが文字化け。またはZen Cartの設定を更新しても文字化けというわけで、set names をどこかに仕込まないといけないようです。
&lt;/p&gt;

&lt;p&gt;
Zen Cartのディレクトリ以下で &lt;em&gt;mysql_connect&lt;/em&gt; でgrepをかけたところ、&lt;br /&gt;
&lt;em&gt;\includes\classes\db\mysql\query_factory.php&lt;/em&gt; に &lt;em&gt;function connect() &lt;/em&gt;がありまして、これで全てのDB接続をしている模様です。&lt;br /&gt;
あ、ちなみにWindowsローカルマシンで実験中です。
&lt;/p&gt;

&lt;pre&gt;&lt;code&gt;36行目
if (@mysql_select_db($zf_database, $this-&gt;link)) {
    $this-&gt;db_connected = true;
    // by MSK
    &lt;em&gt;mysql_query(&quot;set names ujis&quot;);&lt;/em&gt;
    //
    return true;
}
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;
&lt;big&gt;今のところ&lt;/big&gt;はこれでOKのようですが、引き続き要検証。
&lt;/p&gt;  
    </content:encoded>

    <pubDate>Thu, 05 Jul 2007 15:01:03 +0900</pubDate>
    <guid isPermaLink="false">http://blog.till-daylight.org/archives/180-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.1/jp/</creativeCommons:license>
</item>
<item>
    <title>北海道旅行に出かける前に</title>
    <link>http://blog.till-daylight.org/archives/148-unknown.html</link>
            <category>PHP</category>
            <category>Web Design</category>
    
    <comments>http://blog.till-daylight.org/archives/148-unknown.html#comments</comments>
    <wfw:comment>http://blog.till-daylight.org/wfwcomment.php?cid=148</wfw:comment>

    <slash:comments>2</slash:comments>
    <wfw:commentRss>http://blog.till-daylight.org/rss.php?version=2.0&amp;type=comments&amp;cid=148</wfw:commentRss>
    

    <author>nospam@example.com (MS-K)</author>
    <content:encoded>
    &lt;div class=&quot;entry_img_left&quot;&gt;
&lt;a href=&#039;http://ts-hokkaido.co.jp/&#039;&gt;&lt;img width=&#039;250&#039; height=&#039;203&#039; src=&quot;http://blog.till-daylight.org/uploads/img/hokkaidonavi.thumb.jpg&quot; alt=&quot;北海道旅行ナビ&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;
ひとまず抜け出しました（笑）&lt;br /&gt;
← 結果。&lt;br /&gt;
後送りにした作業の続きがまだ今月一杯ありますが、まずは安心。
&lt;/p&gt;

&lt;p&gt;
で、今はまだ旅行シーズンではありませんが、これから北海道に来ようと目論んでいる方は「&lt;a href=&quot;http://ts-hokkaido.co.jp/&quot;  title=&quot;北海道旅行ナビ&quot;&gt;北海道旅行ナビ&lt;/a&gt;」が役に立つはず。
&lt;br /&gt;
観、食、買 のカテゴリごとに各地の情報が登録されており、これからも進化していくはず。
&lt;/p&gt;

&lt;br style=&quot;clear: left;&quot; /&gt;

&lt;div class=&quot;entry_img_left&quot;&gt;
&lt;a href=&#039;http://ts-hokkaido.co.jp/roadmap/&#039;&gt;&lt;img width=&#039;250&#039; height=&#039;203&#039; src=&quot;http://blog.till-daylight.org/uploads/img/routemap.thumb.jpg&quot; alt=&quot;&quot;北海道ルートマップ /&gt;&lt;/a&gt;
&lt;/div&gt;

&lt;p&gt;
サブコンテンツの「&lt;a href=&quot;http://ts-hokkaido.co.jp/roadmap/&quot;  title=&quot;北海道ルートマップ&quot;&gt;北海道ルートマップ&lt;/a&gt;」では、ものがものなのでほとんどフルFlash状態ですけれど、北海道の主要都市間の国道などの移動距離と移動時間がわかりやすく表示されるので、レンタカーでの観光ドライブ（結構多いそうです）の際にきっと役に立つと思います。&lt;br /&gt;
もちろん北海道に住んでいる人がドライブの際の参考にしてもGOOD &lt;img src=&quot;http://blog.till-daylight.org/templates/nm/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; &lt;br /&gt;
環境によっては少し重いかもしれません…
&lt;/p&gt;

&lt;p&gt;
こちらもこれから進化する予定。
&lt;/p&gt;  
    </content:encoded>

    <pubDate>Thu, 01 Mar 2007 11:39:02 +0900</pubDate>
    <guid isPermaLink="false">http://blog.till-daylight.org/archives/148-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.1/jp/</creativeCommons:license>
</item>
<item>
    <title>PHP使ってるんならstrip_tags()やhtmlspecialchars()くらい覚えておこう。 いや、ま、ホントそうですね</title>
    <link>http://blog.till-daylight.org/archives/143-PHPstrip_tagshtmlspecialchars.html</link>
            <category>PHP</category>
    
    <comments>http://blog.till-daylight.org/archives/143-PHPstrip_tagshtmlspecialchars.html#comments</comments>
    <wfw:comment>http://blog.till-daylight.org/wfwcomment.php?cid=143</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.till-daylight.org/rss.php?version=2.0&amp;type=comments&amp;cid=143</wfw:commentRss>
    

    <author>nospam@example.com (MS-K)</author>
    <content:encoded>
    &lt;p&gt;
&lt;a href=&quot;http://b.hatena.ne.jp/HiromitsuTakagi/&quot; &gt;HiromitsuTakagiのブックマーク&lt;/a&gt;さん経由
&lt;/p&gt;

&lt;blockquote cite=&quot;http://b.hatena.ne.jp/HiromitsuTakagi/&quot; title=&quot;HiromitsuTakagiのブックマーク&quot;&gt;
典型的なサニタイズ脳症例 &gt; 「POSTされた値は全て疑って余計な文字を抜くor変換する」みたいな基本的な手法くらいは覚えておいたほうがいい」
&lt;/blockquote&gt;

&lt;p&gt;
&lt;a href=&quot;http://neta.ywcafe.net/000719.html&quot; &gt;Web屋のネタ帳&lt;/a&gt;さんの以下、&lt;br /&gt;
&lt;em&gt;強調&lt;/em&gt;は、私による。
&lt;/p&gt;

&lt;blockquote cite=&quot;http://neta.ywcafe.net/000719.html&quot; title=&quot;Web屋のネタ帳：PHP使ってるんならstrip_tags()やhtmlspecialchars()くらい覚えておこう。&quot;&gt;
PHP使ってるなら、&lt;em&gt;フォームからPOSTされる全ての値に対して&lt;/em&gt;strip_tags()するだけでも、&lt;em&gt;あるいは&lt;/em&gt;次の画面で表示する前にhtmlspecialchars()するだけでも、上のような初歩的な話は防げるのだが。&lt;br /&gt;
～snip～&lt;br /&gt;
それにしても「POSTされた値は全て疑って余計な文字を抜くor変換する」みたいな基本的な手法くらいは覚えておいたほうがいいだろう。
&lt;/blockquote&gt;

&lt;p&gt;
&lt;a href=&quot;http://jp.php.net/strip_tags&quot;  title=&quot;PHPマニュアル：strip_tags&quot;&gt;strip_tags&lt;/a&gt;はあまり使いませんが、&lt;a href=&quot;http://jp.php.net/htmlspecialchars&quot;  title=&quot;PHPマニュアル：htmlspecialchars&quot;&gt;htmlspecialchars&lt;/a&gt;はやたらめったら使いますね。
&lt;/p&gt;

&lt;p&gt;
ただ、これらって別にPOSTされる入力に使う必然性は無くて、最終的に&lt;em&gt;&lt;big&gt;HTMLとして出力する時に必須&lt;/big&gt;&lt;/em&gt;なのでは？
&lt;/p&gt;

&lt;p&gt;
どうせHTML表示時になんとかするので、POSTされた値は特に疑わなくてもいいように思います。
&lt;/p&gt;  
    </content:encoded>

    <pubDate>Fri, 02 Feb 2007 20:52:40 +0900</pubDate>
    <guid isPermaLink="false">http://blog.till-daylight.org/archives/143-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.1/jp/</creativeCommons:license>
</item>
<item>
    <title>SerendipityをSQLiteからMySQLに移行完了</title>
    <link>http://blog.till-daylight.org/archives/142-SerendipitySQLiteMySQL.html</link>
            <category>PHP</category>
            <category>FreeBSD</category>
            <category>Serendipity</category>
    
    <comments>http://blog.till-daylight.org/archives/142-SerendipitySQLiteMySQL.html#comments</comments>
    <wfw:comment>http://blog.till-daylight.org/wfwcomment.php?cid=142</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.till-daylight.org/rss.php?version=2.0&amp;type=comments&amp;cid=142</wfw:commentRss>
    

    <author>nospam@example.com (MS-K)</author>
    <content:encoded>
    &lt;p&gt;
昨年から仕事の合間にやっていたSQLiteからMySQLへの移行を完了しました。
&lt;/p&gt;

&lt;p&gt;&lt;big&gt;&lt;em&gt;が、&lt;/em&gt;&lt;/big&gt;&lt;/p&gt;

&lt;p&gt;
データバックアップのポカで最近の数エントリは消失させてしまいました。&lt;br /&gt;
あと、コメントとトラバとリファラは仕様のため空になりました&lt;(_ _)&gt;&lt;br /&gt;
申し訳ないです。。。
&lt;/p&gt;  
    </content:encoded>

    <pubDate>Thu, 25 Jan 2007 10:00:52 +0900</pubDate>
    <guid isPermaLink="false">http://blog.till-daylight.org/archives/142-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.1/jp/</creativeCommons:license>
</item>
<item>
    <title>SerendipityをSQLiteからMySQLに移行(3)</title>
    <link>http://blog.till-daylight.org/archives/141-SerendipitySQLiteMySQL3.html</link>
            <category>PHP</category>
            <category>FreeBSD</category>
            <category>Serendipity</category>
    
    <comments>http://blog.till-daylight.org/archives/141-SerendipitySQLiteMySQL3.html#comments</comments>
    <wfw:comment>http://blog.till-daylight.org/wfwcomment.php?cid=141</wfw:comment>

    <slash:comments>0</slash:comments>
    <wfw:commentRss>http://blog.till-daylight.org/rss.php?version=2.0&amp;type=comments&amp;cid=141</wfw:commentRss>
    

    <author>nospam@example.com (MS-K)</author>
    <content:encoded>
    &lt;p&gt;

データベースディレクトリを変更するので&lt;br /&gt;

＃vi /etc/rc.conf

&lt;/p&gt;



&lt;pre&gt;&lt;code&gt;mysql_enable=&quot;YES&quot;
mysql_dbdir=&quot;/usr/local/db/mysql&quot;
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;

コンフィグファイルを /etcにコピー。&lt;br /&gt;

＃cp /usr/local/share/mysql/my-medium.cnf /etc/my.cnf&lt;br /&gt;

＃chmod 644 /etc/my.cnf&lt;br /&gt;

＃vi /etc/my.cnf

&lt;/p&gt;



&lt;pre&gt;&lt;code&gt;[mysqld]
default-character-set=utf8
skip-character-set-client-handshake
&lt;/code&gt;&lt;/pre&gt;



&lt;p&gt;

管理者パスワードを設定。&lt;br /&gt;

＃mysqladmin -u root -p password &#039;ms-k12345&#039;&lt;br /&gt;

Enter Password: [Enter]

&lt;/p&gt;



&lt;p&gt;

不要ユーザーを削除。&lt;br /&gt;

&lt;a href=&quot;http://www.bugbearr.jp/?cmd=read&amp;page=FreeBSD%2FMySQL&quot; &gt;FreeBSD/MySQL&lt;/a&gt;さんや&lt;a href=&quot;http://uls.fam.cx/freebsd/archives/000692.html&quot; &gt;FreeBSDな生活&lt;/a&gt;さんがわかりやすいです。&lt;br /&gt;

私は以下と同様にHostがlocalhost以外のものを削除しました。 

&lt;/p&gt;



&lt;blockquote cite=&quot;http://www.bugbearr.jp/?cmd=read&amp;page=FreeBSD%252FMySQL&quot; title=&quot;不要なユーザーを削除する：FreeBSD/MySQL&quot;&gt;

FreeBSD の ports でインストールすると、以下のユーザーがいるはず。(your.host.name は、マシンのホスト名)

&lt;ul&gt;

&lt;li&gt;root@localhost&lt;/li&gt;

&lt;li&gt;root@your.host.name&lt;/li&gt;

&lt;li&gt;@localhost&lt;/li&gt;

&lt;li&gt;@your.host.name&lt;/li&gt;

&lt;/ul&gt;



これを、以下のみとする。

&lt;ul&gt;

&lt;li&gt;root@localhost&lt;/li&gt;

&lt;li&gt;@localhost&lt;/li&gt;

&lt;/ul&gt;



(&#039;&#039;@localhost も制限した方がいいかも?)

&lt;/blockquote&gt;



&lt;p&gt;

PHPのMysqlモジュールは組込み済みなので、後はやっとSerendipityの再設定です。

&lt;/p&gt;  
    </content:encoded>

    <pubDate>Sat, 02 Dec 2006 10:07:52 +0900</pubDate>
    <guid isPermaLink="false">http://blog.till-daylight.org/archives/141-guid.html</guid>
    <creativeCommons:license>http://creativecommons.org/licenses/by-sa/2.1/jp/</creativeCommons:license>
</item>

</channel>
</rss>