Hatena::¥Ö¥í¥°(Diary)

For Want Of A Better Word

2011-12-27

InnoDB¤Ç¥ì¥×¥ê¥±¡¼¥·¥ç¥ó

http://www.irori.org/doc/mysql-rep.html

    • ²¿¤é¤«¤Î»ö¾ð¤¬¤¢¤Ã¤Æ¥¹¥ì¡¼¥Ö¥µ¡¼¥Ð¤ò»ß¤á¤¿¾ì¹ç¤Ç¤â¡¢¥¹¥ì¡¼¥Ö¥µ¡¼¥Ð¤òºÆ³«¤µ¤»¤ì¤ÐºÆ¤Ó¥Þ¥¹¥¿¥µ¡¼¥Ð¤ÈÁ´¤¯Æ±¤¸ÆâÍÆ¤ËÌ᤹¤³¤È¤¬½ÐÍè¤Þ¤¹¡£
    • (µ¿Ìä)¹¹¿·¤Î¥¿¥¤¥ß¥ó¥°¤Ï´ðËܥꥢ¥ë¥¿¥¤¥à¡£ slave¤¬master¤Î¥Ð¥¤¥Ê¥ê¥í¥°¤ò¼è¤ê¤Ë¹Ô¤¯¤è¤¦¤À¤¬¡¢¤½¤Î¥¿¥¤¥ß¥ó¥°¤Ï¡©

[¼êư¤Ç¤ÎÀÚ¤êÂØ¤¨ÊýË¡¤Ï¡©]

  • ­¡slave¤ÎÄä»ß(¥ì¥×¥ê¥±¡¼¥·¥ç¥ó¤ÎÄä»ß)
    • ¢ª¥¹¥Æ¡¼¥¿¥¹¤«¤é³Îǧ
  • ­¢FireWallÀßÄê¤Ë¤è¤ë¡¢¥Ý¡¼¥È¥Õ¥©¥ï¡¼¥Ç¥£¥ó¥°¤ÎÊѹ¹?
    • ¢ªWEB¥µ¡¼¥Ð¤«¤é¥Þ¥¹¥¿¤¢¤Æ¤Î¥ê¥¯¥¨¥¹¥È¤ò¡¢slave¦¤ËÁ÷¤ë¡£
  • ­£slave¤ÎÊý¤¬¥Ç¡¼¥¿¤¬¿Ê¤ó¤À¾ì¹ç¤ÎÂбþ
    • Éû·Ï¤Î¥Æ¡¼¥Ö¥ë¥í¥Ã¥¯¡£(dump¼èÆÀ) ¢ªÀµ¡¦Éû¤òµÕž¤µ¤»¤ë¡£

[¥¢¥×¥ê¦¤ÇɬÍפʤ³¤È]

[Éüµì¼ê½ç¹Í»¡¥á¥â]

InnoDB¤ÎÀßÄê³Îǧ

  • ¥Æ¡¼¥Ö¥ë¤´¤È¤ÎÀßÄêÊѹ¹
    • alter table ¥Æ¡¼¥Ö¥ë̾ engine=innodb;
  • ¥Æ¡¼¥Ö¥ë¤´¤È¤ÎÀßÄê³Îǧ
    • show table status; ¤ÎEngine¹àÌܤò»²¾È¤¹¤ë¡£

CentOS_samba¤Ç¤Î¥Õ¥¡¥¤¥ë¥µ¡¼¥Ð¹½ÃÛ

  • ­¢¥æ¡¼¥¶¤ÎºîÀ®
    • ¥æ¡¼¥¶¤òºîÀ® or ´û¸¤Î¥æ¡¼¥¶¤òÍøÍÑ
    • pdbedit -a ¥æ¡¼¥¶Ì¾¡¡//sambaÍѤ˥桼¥¶¤òÀßÄꤹ¤ë¡£

£Õ£Ó£Â¥á¥â¥ê¤Ê¤É¤Î¥Þ¥¦¥ó¥È

  • ­¤¥Þ¥¦¥ó¥È
    • mount -t ntfs -o defaults /dev/sdb1 /mnt/hdd_1/
  • ¡ÊÊä­¡Ë­¥¼«Æ°¥Þ¥¦¥ó¥È¤Ë¤¹¤ë¾ì¹ç
    • /etc/fstab¤Ë²¼µ­ÄɲÃ
    • /dev/sdb1 /mnt/hdd_1 ntfs defaults 0 0

Linux(CentOS)¤ÇNTFS(windows¥Õ¥©¡¼¥Þ¥Ã¥È)¤ò¥Þ¥¦¥ó¥È¤¹¤ë

http://d.hatena.ne.jp/kiyotune/20110509/1304918556

¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¥Ñ¥Ã¥±¡¼¥¸ ntfs-3g ¤¬Â­¤ê¤Ê¤¤¤Î¤Ç¥¤¥ó¥¹¥È¡¼¥ë¡£

¤³¤Î¤È¤­¥ê¥Ý¥¸¥È¥ê¤òÄɲ乤롣

ntfs¤ò»ØÄꤷ¤Æ¥Þ¥¦¥ó¥È¤¹¤ë¡£

¤³¤ì¤Ç¸«¤é¤ì¤ë¡ª

¥Ï¥¦¥¸¥ó¥°¡¦¥Û¥¹¥Æ¥£¥ó¥°¡¦¥ì¥ó¥¿¥ë¡¦VPS¡¦¥¯¥é¥¦¥É°ã¤¤

¥Ï¥¦¥¸¥ó¥°¥µ¡¼¥Ó¥¹

  • ¸ÜµÒ¤ÎÄÌ¿®µ¡´ï¤ä¾ðÊóȯ¿®ÍѤΥ³¥ó¥Ô¥å¡¼¥¿(¥µ¡¼¥Ð)¤Ê¤É¤ò¡¢¼«¼Ò¤Î²óÀþÀßÈ÷¤ÎÀ°¤Ã¤¿»ÜÀߤËÀßÃÖ¤¹¤ë¥µ¡¼¥Ó¥¹

¥Û¥¹¥Æ¥£¥ó¥°(¥ì¥ó¥¿¥ë¥µ¡¼¥Ð)¥µ¡¼¥Ó¥¹

¶¦ÍÑ¥µ¡¼¥Ð¥ì¥ó¥¿¥ë
  • Ê£¿ô¤Î¥æ¡¼¥¶¤ÇƱ¤¸¥µ¡¼¥Ð¤òÍøÍѤ¹¤ë¡£
ÀìÍÑ¥µ¡¼¥Ð¥ì¥ó¥¿¥ë

VPS

    • ¶¦ÍѤΥ³¥¹¥È¤ÇÀìÍѤε¡Ç½¤ò¼õ¤±¤é¤ì¤ë¤Î¤¬¤è¤¤¤È¤³¤í¡©
    • IaaS¤Ë¤À¤¤¤Ö¶á¤¤¤±¤É¡¢½¾ÎÌÀ©¤«Èݤ«¤¬¶­ÌÜ?

¥¯¥é¥¦¥É

  • ¥µ¡¼¥Ó¥¹¤ò»È¤Ã¤¿Ê¬¤À¤±²Á³Ê¤ò¤Ï¤é¤¦½¾ÎÌÀ©¡£(¥¯¥é¥¦¥É¤È¤¤¤Ã¤Æ¤âɬ¤º¤·¤â½¾Î̤Ǥʤ¤¤È¤­¤â¡¦¡¦¡¦)
  • ²¼µ­¤Î¥ì¥Ù¥ë¤Ç¥µ¡¼¥Ó¥¹¤ÎÍøÍѤ¬²Äǽ
  • ¤³¤ì¤é¤Ï¡¢ÊªÍýŪ¤Ê¥µ¡¼¥Ð¤òÀìÍѤ˼ڤê¼ê¤¤¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¡£¤Ê¤Î¤Ç¡¢¥á¥ó¥Æ¥Ê¥ó¥¹¤ä¥Ï¡¼¥É¾ã³²¤Î±Æ¶Á¤ò¼õ¤±¤Ê¤¤¡£(¤½¤¦¤¢¤ë¤Ù¤­)
  • IaaS¤È¸Æ¤Ð¤ì¤Æ¤¤¤ë¥µ¡¼¥Ó¥¹¤Ï¡¢VMware ESX¤äXenServer¤Î¤è¤¦¤Ê¥Ï¥¤¥Ñ¡¼¥Ð¥¤¥¶·¿¤Î²¾ÁÛ²½µ»½Ñ¤òºÎÍѤ·¤Æ¤¤¤ë¤³¤È¤¬Â¿¤¤¡£
    • ¤¿¤È¤¨¤Ð vSphere¡£

syslog¤ä¤é¤Ê¤ó¤ä¤é

syslog¤È¤Ï

syslog¥Ç¡¼¥â¥ó

  • syslog¥Ç¡¼¥â¥ó(syslogd)¤Ï¤½¤Î̾¤ÎÄ̤ꥷ¥¹¥Æ¥à¤Î¥í¥°(µ­Ï¿)½èÍý¤òôÅö¤¹¤ë¥Ç¡¼¥â¥ó
  • ¥Ç¡¼¥â¥ó¤Ï΢¤Çư¤¯¤¿¤á¡¢Æ°ºîÃæ¤Ë¥¨¥é¡¼¤¬µ¯¤­¤¿¤È¤­¤Ê¤É¤Ë¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·¤Æ¥æ¡¼¥¶¡¼¤ËÅÁ¤¨¤ë¤È¤¤¤¦¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó¡£

¤½¤Î¤¿¤á¤Ë¿¤¯¤Î¥Ç¡¼¥â¥ó¤Ï¼«¿È¤Î¥í¥°¤òsyslog¤ò·Ðͳ¤·¤Æ¥Õ¥¡¥¤¥ë¤Ë½ñ¤­¹þ¤ß¤Þ¤¹¡£

  • ¡úsyslog¤Ï¥×¥í¥»¥¹¤Î¥¨¥é¡¼¤òɽ¼¨¤¹¤ë¡£

* /etc/syslog.conf

* /var/log/messages¡¢/var/log/cron

syslog¤ÎÆÉ¤ßÊý

ÀßÄê¤Ê¤É

  • syslog ¤Ï¡¢ÆÈ¼«¤Î¥í¥°½ÐÎÏÊýË¡¤ò»ý¤¿¤Ê¤¤¡¢Èó¾ï¤Ë¿¤¯¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤¬ÍøÍѤ·¤Æ¤¤¤Þ¤¹¡£
  • syslog¤òÍøÍѤ·¤Æ½ÐÎϤµ¤ì¤¿¥í¥°¥á¥Ã¥»¡¼¥¸¤¬µ­Ï¿¤µ¤ì¤ë¥í¥°¥Õ¥¡¥¤¥ë¤Ï¡¢
    • /var/log/boot.log¡¢
    • /var/log /cron¡¢
    • /var/log/maillog¡¢
    • /var/log/messages¡¢
    • /var/log/secure¡¢
    • /var/log/spool¤Ê¤É

¤Ç¤¹¤¬¡¢ÆÃÄê¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò½ü¤­¡¢Â¿¤¯¤Î¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Î¥í¥°¥á¥Ã¥»¡¼¥¸¤Ï¡¢¥Ç¥Õ¥©¥ë¥È¤Ç/var/log/messages¤Ëµ­Ï¿¤µ¤ì¤Þ¤¹¡£

CPU¥³¥¢¿ô¤Î³ÎǧÊýË¡

²¼µ­¤ÎÊýË¡¤ÇCPU¿ô¡¢¥³¥¢¿ô¡¢¥¹¥ì¥Ã¥É¿ô¤ò³Îǧ¤¹¤Ù¤·

    • ²¼µ­¥³¥Þ¥ó¥É¤ò¼Â¹Ô

cat /proc/cpuinfo |egrep 'physical id|core' |sort

  • physical id ¤¬²¿¼ïÎฺߤ¹¤ë¤«¤Ç¡¢¥½¥±¥Ã¥È¿ô¤¬È½ÌÀ¤¹¤ë¡£
  • cat /proc/cpuinfo¤«¤éCPU¤Î·¿ÈÖ¤ò³Îǧ¤·¤Æ¡¢¾ÜºÙ¤òWEB¤Ç¸¡º÷¡£
  • CPU¾ÜºÙ¤è¤ê¡¢¥³¥¢¿ô¤È¥¹¥ì¥Ã¥É¿ô¤ò³Îǧ¤¹¤ë¡£

´ðËÜŪ¤Êajax¤Î¥µ¥ó¥×¥ë

JS¤Î¤ß

<script type="text/javascript" >

      //¥¤¥Ù¥ó¥È¥Ï¥ó¥É¥ê¥ó¥°
      function onButtonClick(){
              sendRequest();
      }

      //Á÷¿®ÍѽèÍý
      function sendRequest(){
      var xmlhttp;

      //IEÍѤǥª¥Ö¥¸¥§¥¯¥ÈÀ¸À®¤Ëtry¤À¤á¤Ê¤éFFÍѤǥª¥Ö¥¸¥§¥¯¥ÈÀ¸À®¤Ëtry
      try{
          //IEÍѤνèÍý
              xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
              xmlhttp.onreadystatechange = function(){
                      if(xmlhttp.readyState == 4 && xmlhttp.status== 200) {
                              processRequest(xmlhttp);
                      }
              }
      }catch(e){
          //FFÍѤνèÍý
              xmlhttp = new XMLHttpRequest();
              xmlhttp.onload = function(){
                      processRequest(xmlhttp);
              }
      }

      xmlhttp.open("GET", "data.txt");
      xmlhttp.send(null);
  }

      //¼õ¿®ÍѽèÍý
  function processRequest(xmlhttp){
      alert(xmlhttp.responseText);
  }
</script>


JQUERY¤Î¾ì¹ç

      $(function(){
              $.ajax({
                      'type':'POST',
                      'url':'', //URL
                  'data':{
                      //¥µ¡¼¥Ð¤ËÅϤ¹¥Ñ¥é¥á¡¼¥¿

                  },
                      'success':function(data){
                         //À®¸ù»þ¤Î½èÍý(data¤ÏÌá¤êÃÍ)
                      },
                      'error':function(xhr, message){
                              //error»þ¤Î½èÍý
                      }
              });
      });

cakephp¤á¤â

= Cake¤Î¥á¥â =

¢¨µ¤¤Ë¤Ê¤Ã¤¿¤È¤³¤í¤À¤±¥á¥â¤·¤Æ¤¤¤¯¡£

----

== Tips ==

* ËÜ²È http://cakephp.org/

* [ÆüËÜ¥Õ¥©¡¼¥é¥à]http://cakephp.jp/modules/newbb/

* [¸ø¼°Q&A¥µ¥¤¥È] http://ask.cakephp.org/jpn


== ²ÝÂê ==

* ¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤ÎÀâÌÀ¤Ë¤ª¤±¤ë¡£

dispatcher¤Îư¤­¤ò³Îǧ¤·¤¿¤¤¡£(index.php dispatcher bootstrap¤Î´ØÏ¢)

* ³«È¯´Ä¶­¤ÈËÜÈ֤Ǥκ¹Ê¬¤òµÛ¼ý¤µ¤»¤ëÊýË¡

* ¥³¥é¥à»²¹Í

* ModelÁàºî¤ÎSQ£ì¥¤¥ó¥¸¥§¥¯¥·¥ç¥óÂкö (ºÑ)

* ¼êư¤Ç¥¯¥¨¥ê¡¼¤òȯ¹Ô¤¹¤ë¾ì¹ç

* http://blog.shinez.jp/?p=16

* Model¤òÍøÍѤ¹¤ë¾ì¹ç (1.3.8·Ï)(ºÑ)

* ¢ª¼«Æ°¤Ç¥¨¥¹¥±¡¼¥×¤µ¤ì¤¤¤ë¡Ö';--¡×¤â¤½¤Î¤Þ¤ÞÆþÎϤµ¤ì¤Æ¤¤¤ë¡£

* ¥³¥ó¥È¥í¡¼¥é¡¼¤Î $here $webroot $base¤Î°ã¤¤

* view ¤Î element()¤ÈaddScript¤ò»È¤Ã¤Æ¤ß¤ë¡£

* ¤ä¤Ï¤ê¤Í¡¢photron¤Î¥æ¡¼¥¶¥µ¥Ý¡¼¥È¤Ï¡¢Cake¤Îµ¡Ç½¤ò¤Õ¤ó¤À¤ó¤Ë»È¤Ã¤Æ¤¤¤ëµ¤¤¬¤¹¤ë¡£

* ¸«¤Æ³Æµ¡Ç½¤Î¼ÂÁõÊýË¡¤ò³Îǧ¤·¤è¤¦¡£

* ACL¤Ë¤ª¤±¤ëACO¤¬¶ñÂÎŪ¤Ë¤Ê¤ó¤Î¥ª¥Ö¥¸¥§¥¯¥È¤«¤ò³Îǧ¡£

* HttpSocketÉáÄ̤ËPHP¤ÇÄÌ¿®¤¹¤ë¾ì¹ç¤Ï¤É¤¦¤¹¤ë¤ó¤À?

* HTML¥Ø¥ë¥Ñ¡¼

* Auth¥Ø¥ë¥Ñ¡¼¤ÎÍøÍÑ

* ACL¤ÎÍøÍÑ

* ´Êñ¥Ö¥í¥°¥µ¥¤¥È¤ÎºîÀ®

* °ìÍ÷¤È´ÉÍý²èÌÌ

* pagenation + ajax()

----


== ³µÍ×Éô ==

* ºÇ½é¤Ë¤Á¤ç¤Ã¤Èư¤«¤¹¤¿¤á¤Î¥á¥â

* Ê£¿ô¥¢¥×¥ê´ÉÍý¤Îµ­ºÜ¤¬¤Ê¤¤¤Î¤¬»Äǰ¡£

== ÀßÄêÊÔ ==

=== ¥ë¡¼¥Æ¥£¥ó¥°µ¡Ç½ ===

* ¥Ñ¥¹Ì¾/¥³¥ó¥È¥í¡¼¥é¡¼Ì¾/¥¢¥¯¥·¥ç¥ó̾¡¡¤È¤¦¤¤URL¥ë¡¼¥ë¤òÊÑ´¹¤Ç¤­¤ë¡£¾ÜºÙ¤Ï¸å½Ò¡£

=== ÆÈ¼«Ì¿Ì¾µ¬Â§ ===

* 25¥Ú¡¼¥¸¤Ë̿̾µ¬Â§¤¬¤¬¤Ã¤Á¤ê¤¢¤ë¤Î¤Ç³Ð¤¨¤ë¡£

* ÆÈ¼«¤Î̿̾µ¬Â§¤ÎÀßÄ꤬¡¢inflections.php¤ÇÀßÄê¤Ç¤­¤ë¡£

=== ¥Ö¡¼¥È¥¹¥È¥é¥Ã¥× ===

* ¥Ç¥Õ¥©¥ë¥È¤ÎÀßÄê¥Õ¥¡¥¤¥ë°Ê³°¤ÎÆÉ¤ß¹þ¤ß»þ¤Ë¡¢ÊÔ½¸¤¹¤ë¡£

* inflection¤ÎÀßÄê¤â¤³¤³¤Ç¤ä¤ë


== ModelÊÔ ==

=== ¥â¥Ç¥ë¤ÎÂ礭¤Ê»ÅÁÈ¤ß ===

* ¥Ç¡¼¥¿Æþ½ÐÎÏ(find) save() delete()¤Ê¤É)

* ¥Ð¥ê¥Ç¡¼¥·¥ç¥ó(Æþ½ÐÎÏ»ú¤Î¥Á¥§¥Ã¥¯)

* ¥¢¥½¥·¥¨¡¼¥·¥ç¥ó(¥â¥Ç¥ëƱ»Î¤Î´ØÏ¢ÉÕ¤± sql¤Ë¤è¤ëjoin¤Ç¤Ï¤Ê¤¯¡¢Ì¾Á°»ØÄê¤Ç¼è¤ì¤ë)

* insert save saveall

* select find

* update updataAll

* delete deleteAll

=== AppModel ===

* Model¤Î´ðÄ쥯¥é¥¹

* ¶¦Ä̽èÍý¤Ï¸Ä¡¹¤Ë¤«¤³¤¦¡£

* /models/app_model.php

=== Model¤Î¥×¥í¥Ñ¥Æ¥£(¥¯¥é¥¹¤Î¥á¥ó¥Ð)¤Ïp35»²¾È ===

* $useTable false¤ÇDB¤Ê¤·

* $data ¥Æ¡¼¥Ö¥ë¥Ç¡¼¥¿¤Ç¤¹¡£

* 1.3 ¤«¤évirtualField

* validation ¥Õ¥£¡¼¥ë¥É¤Ø¤Îvalidation¤òÏ¢ÁÛÇÛÎó¤ÇÅÐÏ¿

=== Model¤Î¥á¥½¥Ã¥É ==

==== ::find() ====

* type(Âè1°ú¿ô)

* all Á´·ï

* firstºÇ½é

¤Ê¤É¤Ê¤É

* option(Âè2°ú¿ô)

* fields : ¥Õ¥£¡¼¥ë¥É̾»ØÄê

* condition ¡§¾ò·ï»ØÄê

==== ::findBy ====

* findBy¹àÌÜ̾(value);¤Ç¾ò·ï»ØÄê¤Ç¸¡º÷¤Ç¤­¤ë¡£


==== ::bindXXXX ====

* bind·Ï¤Ï¥¢¥½¥·¥¨¡¼¥·¥ç¥óÍøÍÑ»þ¤Ë¶î»È¤¹¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡£

==== ::setSource ====

* »ÈÍѤ¹¤ë¥Æ¡¼¥Ö¥ë̾¤ò¥×¥í¥°¥é¥àÃæ¤ÇÊѹ¹¤¹¤ë¤¿¤á¤Î¤â¤Î¡£

* Ä̾ï¤Ï½é´ü²½»þ¤Ë¥×¥í¥Ñ¥Æ¥£¤Ë¥»¥Ã¥È¤µ¤ì¤ë¡£

==== ::set() ====

* ½ñ¤­½Ð¤·¤ä¥Ð¥ê¥Ç¡¼¥È¤ËɬÍפʥǡ¼¥¿¤òÌÀ¼¨Åª¤Ë¥»¥Ã¥È¤¹¤ë¡£

* Â裱°ú¿ô¤Ë¥Õ¥£¡¼¥ë¥É̾¡¡Â裲°ú¿ô¤ËÃͤ«

¥Õ¥£¡¼¥ë¥É̾¢ªÃͤÎÏ¢ÁÛÇÛÎó¡£

*

==== ::desconstruct() ====

* Æü»þ¥Ç¡¼¥¿¤ò»ØÄê¥Õ¥£¡¼¥ë¥É(DB)¤¬Ç§¼±¤Ç¤­¤ëÆü»þ·Á¼°¤Ë²Ã¹©

==== ::schema() ====

* »ØÄê¥Õ¥£¡¼¥ë¥É¤ÎÄêµÁ¤ò¼èÆÀ

==== ::hasField() ====

* field¤¬Â¸ºß¤¹¤ë¤«¥Á¥§¥Ã¥¯(DBÎó)

==== ::saveField() ====

* ÆÃÄê¥Õ¥£¡¼¥ë¥É¤ËÂФ·¤ÆÊݸ¤ò¹Ô¤¦¡£

==== ::save() ====

* 1¥ì¥³¡¼¥Éʬ¤Î¥Ç¡¼¥¿¤òÊݸ

==== ::saveAll() ====

* »ØÄê¥ì¥³¡¼¥É¤ò¤¹¤Ù¤ÆÊݸ

====::updateAll ====

* »ØÄê¥ì¥³¡¼¥É¤ò¤¹¤Ù¤Æ¹¹¿·

==== delete() ====

* ¥ì¥³¡¼¥É¤Îºï½ü

==== deleteAll() ====

* ¾ò·ï¤¬°ìÃפ·¤¿¤â¤Î¤ò¤¹¤Ù¤Æºï½ü¤¹¤ë¡£

==== query() ====

* SQL¤òÅϤ·¤Æ¼Â¹Ô

* (¥µ¥Ë¥¿¥¤¥º¤Ï¤ï¤¹¤ì¤Ê¤¤¤è¤¦¤Ë)

==== validatets() ====

* validation¤Î¼Â¹Ô

==== getInserID():getLastInsertID() ====

* insert¤·¤¿¥ì¥³¡¼¥É¤Î¥×¥é¥¤¥Þ¥ê¥­¡¼¤ò¼èÆÀ¤¹¤ë¡£

==== getNumRows() ====

* ¼èÆÀ¥Ç¡¼¥¿¿ô¤Î¼èÆÀ

==== getAffectedRows() ====

* ¹¹¿·¤µ¤ì¤¿¥ì¥³¡¼¥É¿ô


==== ¥³¡¼¥ë¥Ð¥Ã¥¯ ====

* beforeFind()

* afterFind()

* beforeSave()

* afterSave()

* beforeDelete()

* afterDelete()

* beforeValidate()

* afterValidate()

* onError()


== ControllerÊÔ ==

=== ³µÍ× ===

* ¥â¥Ç¥ë¤«¤é¥Ç¡¼¥¿¤ò¤â¤é¤¤¡¢view¤ò¥ì¥ó¥À¥ê¥ó¥°¤¹¤ë¤ä¤Ä¡£

* ÄêµÁ¤µ¤ì¤¿¥á¥½¥Ã¥É¤Ï¥¢¥¯¥·¥ç¥ó¤È²ò¼á¤µ¤ì¡¢URL¤«¤é¤É¤ì¤ò¼Â¹Ô¤¹¤ë¤«»ØÄê¤Ç¤­¤ë¡£

* action¤Ë¤·¤¿¤¯¤Ê¤¤¤â¤Î¤Ï¡¢¡Ö_¥á¥½¥Ã¥É̾¡×¤È¤¹¤ë¤³¤È¤Ç¡¢private¤Ë¤Ç¤­¤ë¡£

=== ¥×¥í¥Ñ¥Æ¥£ÊÔ ===

µ¤¤Ë¤Ê¤Ã¤¿¤ä¤Ä

* $here :¥É¥­¥å¥á¥ó¥È¥ë¡¼¥È¤«¤é¸½ºß¤Î¥Ñ¥¹

* $webroot :webroot¤Î¥Ñ¥¹

* $params :¥ë¡¼¥Æ¥£¥ó¥°¤Ç²òÀϤµ¤ì¤¿¥Ñ¥é¥á¡¼¥¿

* $data :¥Õ¥©¡¼¥à¤Ç¼õ¤±¼è¤Ã¤¿¥Ç¡¼¥¿¡£find()¤Ê¤É¤Ç¼èÆÀ¤·¤¿¥Ç¡¼¥¿¤ò¤³¤Î¥×¥í¥Ñ¥Æ¥£¤Ë¥»¥Ã¥È¤¹¤ë¤È

form¥Ø¥ë¥Ñ¡¼¤Ç¼«Æ°Åª¤ËÃͤò¥»¥Ã¥È¤¹¤ë¡£

* $viewPath:view¥Õ¥¡¥¤¥ë¤òÆÉ¤ß¹þ¤à¥Ñ¥¹(¥Ç¥Õ¥©¥ë¥È°Ê³°¤â¤Ç¤­¤ë¤è)

* $layoutPath:¥ì¥¤¥¢¥¦¥È¥Õ¥¡¥¤¥ë¤òÆÉ¤ß¹þ¤à¥Ñ¥¹(¥Ç¥Õ¥©¥ë¥È°Ê³°¤â¤Ç¤­¤ë¤è)

* $viewVars :view¤ËÅϤµ¤ì¤ëÃÍ

* $base :¥Ù¡¼¥¹¥Ç¥£¥ì¥¯¥È¥ê

* $layout :¥ì¥¤¥¢¥¦¥È̾¤Î»ØÄê

* $autoLayout :¥ì¥¤¥¢¥¦¥È¤Èview¤ò·ë¹ç¤¹¤ë¤«

* $view :»ÈÍѤ¹¤ëview¥Õ¥¡¥¤¥ë

* $ext :view¥Õ¥¡¥¤¥ë¤Î³ÈÄ¥»Ò

* $output: ¥ì¥ó¥À¥ê¥ó¥°¸å¤ÎHTML¥Ç¡¼¥¿

* $passedArgs:URLÆâ¤Î̾Á°Éեѥé¥á¡¼¥¿

* $validationErrors: ¥Ð¥ê¥Ç¡¼¥·¥ç¥ó¥¨¥é¡¼¤¬¤¢¤ë¾ì¹ç¤Î¥á¥Ã¥»¡¼¥¸

=== ¥á¥½¥Ã¥É ===

==== set() ====

* view¤Ë¥Ç¡¼¥¿¤ò¥»¥Ã¥È

==== setAction() ====

* ¾¤Î¥¢¥¯¥·¥ç¥ó¤ò¼Â¹Ô

==== validate() ====

* ¥Ð¥ê¥Ç¡¼¥·¥ç¥ó¤Î¥¨¥é¡¼¿ô¤ò¼èÆÀ¤¹¤ë¡£

==== validateErrors() ====

* ¥Ð¥ê¥Ç¡¼¥·¥ç¥ó¤Î¥á¥Ã¥»¡¼¥¸¤ò¼èÆÀ¤¹¤ë¡£

==== render() ====

* ¥Ó¥å¡¼¤ò»ØÄꤷ¤Æ¤Î¥ì¥ó¥À¥ê¥ó¥°

==== ¡úflash() ====

* ´Ê°×Ū¤Ê¥á¥Ã¥»¡¼¥¸¥Ú¡¼¥¸¤Î½ÐÎÏ

* ¶ñÂÎŪ¤Ë¤¤¤¦¤È¡¢view¤ò»ØÄꤷ¤Ê¤¤¡¢layout¥Õ¥¡¥¤¥ë¤ò½ÐÎϤ¹¤ë¡£

* $message¤Ëɽ¼¨¥á¥Ã¥»¡¼¥¸

* $URL¤Ëɽ¼¨¸å¤ËÁ«°Ü¤µ¤»¤¿¤¤URL

* $pauses¤Ë¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤¹¤ëÉÿô¤ò»ØÄꤹ¤ë¡£

* ¥Ç¥Õ¥©¥ë¥È¤Ç¤Ï¡¢view/layoutÆâ¤Ë¸ºß¤¹¤ë¡Öflash.ctp¡×¤ò½ÐÎϤ¹¤ë¡£

* $layout¤Ç¥ª¥ê¥¸¥Ê¥ë¤ÎflashÍѥ쥤¥¢¥¦¥È¥Õ¥¡¥¤¥ë¤ËÊÑ´¹¤Ç¤­¤ë¤¬¡¢

¥Õ¥¡¥¤¥ëÆâ¤Ë¤³¤Î¥¿¥°¤òÉղ䷤Ƥª¤¯É¬Íפ¬¤¢¤ë¡£

=== ¥³¡¼¥ë¥Ð¥Ã¥¯ ===

==== before/afterFilter() ====

* ¥³¥ó¥È¥í¡¼¥ë½èÍý³«»ÏÁ°¸å

==== before/afterRender() ====

* ¥ì¥ó¥À¥ê¥ó¥°³«»ÏÁ°¸å

=== ¥³¥ó¥È¥í¡¼¥é¡¼¥·¥ó¥×¥ë¤«¤Î¥Ý¥¤¥ó¥È ===

* ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ò¤Ä¤¯¤ê¡¢´Ø¿ô¤ò°Üư¤¹¤ë¡£

* find¤ò³ÈÄ¥¤·¤Æ¡¢ÆÈ¼«¤Î¥¿¥¤¥×¤òºî¤ë.¡£

p112 »²¾È!!


== view¥Õ¥¡¥¤¥ë ==

* Âç»ö¤Ê¤³¤È

* view ¤Èlayout¤Î¾¤Ëelement¤¬¤´¤¶¤¤¤Þ¤¹¡£

* element¤ÏÉôÉÊview¤Ç¤¹¡£¶¦Ä̲½¤Ç¤­¤Þ¤¹¡£ÊØÍø¤Ç¤¹¡£

* addScript()¤¬µ¤¤Ë¤Ê¤ê¤Þ¤¹¡£

=== ¥×¥í¥Ñ¥Æ¥£ ===

* ¥³¥ó¥È¥í¡¼¥é¡¼¤È¤Û¤ÜƱ¤¸

=== ¥á¥½¥Ã¥É ===

==== element() ====

* ¥¨¥ì¥á¥ó¥È¤Î¥ì¥ó¥À¥ê¥ó¥°

==== addScript() ====

* ¥¹¥¯¥ê¥×¥È¤ÎÄɲÃ

==== uuid() ====

* ¥æ¥Ë¡¼¥¯¥æ¡¼¥¶ID¤òÀ¸À®¤Ç¤­¤ë¡ª

* ¥À¥Ö¥ë¥¯¥ê¥Ã¥¯¥Á¥§¥Ã¥¯¤Ï¤³¤ì¤È¥»¥Ã¥·¥ç¥ó¤Ç¡ª

==== ¥Æ¡¼¥Þ ====

* view¥»¥Ã¥È¤ò¿Í¤¯¤¯¤ê¤Ë¤Ç¤­¤ë

=== ¡úviewÆâ¤Ç¤Îif¤Î½ñ¤­Êý ===

http://cakephp-saboten.blogspot.com/2008/03/view-foreachif.html

== ¥Ó¥Ø¥¤¥Ó¥¢(Model³ÈÄ¥) ==

* ¾Êά

== ¥³¥ó¥Ý¡¼¥Í¥ó¥È(¥³¥ó¥È¥í¡¼¥é¡¼³ÈÄ¥) ==

=== ÁȤ߹þ¤ß ===

* Auth(ǧ¾Ú)

* Security(¥»¥­¥å¥ê¥Æ¥£¶¯²½)

* Session (¥»¥Ã¥·¥ç¥ó¤ÎÁàºî)

* Cookie (Cookie¤ÎÁàºî)

* Email (1.3°Ê¹ß¤Ï¥Þ¥ë¥Á¥Ð¥¤¥ÈOK¤Î²ÄǽÀ­¤¢¤ê¡ª)

* RequestHandler

* ¾ÜºÙ¤Ï¾Êά

== ¥Ø¥ë¥Ñ¡¼(view³ÈÄ¥) ==

* HTML¥Ø¥ë¥Ñ¡¼

* Form

* Paginator

* Session

* Javascript

* JS

* Ajax

* Rss

* XML

* Text

* Number

* Time

=== HTML¥Ø¥ë¥Ñ¡¼ ===

* ´ðËܤϻȤï¤Ê¤¤(HTMLºîÀ®¤¬Àè¤Î¥Ñ¥¿¡¼¥ó¤¬Â¿¤¤¤Î¤Ç)

==== getCrumbs() ====

* ¥Ñ¥ó¤¯¤ºÆþ¼ê

==== link ====

* ¥ê¥ó¥¯¤ÎÀßÄê

* $confirmMessage¤ÎÀßÄê¤Ç³Îǧ¥À¥¤¥¢¥í¥°¤Îɽ¼¨¤â¤Ç¤­¤ë¡£

=== Form¥Ø¥ë¥Ñ¡¼ ===

* $this->data¤Ç¥¢¥¯¥»¥¹¤¹¤ë¤Î¤¬°ìÈÖ¤­¤ì¤¤

¡ú¤ä¤Ã¤Æ¤ß¤ë¡ª

=== Ajax¥Ø¥ë¥Ñ¡¼ ===

¡ú¤ä¤Ã¤Æ¤ß¤ë¡ª

* AJAX¥Ø¥ë¥Ñ¡¼¤Ç¤ÏJavaScript¥é¥¤¥Ö¥é¥ê¤ÎPrototype¤Èscript.aculo.us¤ò»ÈÍѤ·¤Þ¤¹¡£

ÊÌÅÓ¥À¥¦¥ó¥í¡¼¥É¤¬¤Ò¤Ä¤è¤¦¡£

* ¤¤¤Þ¤äjquery¤ÎÊý¤¬¥á¥¸¥ã¡¼¤Ç°·¤¤¤ä¤¹¤¤¤Î¤Ç¡¢¤³¤Î¥Ø¥ë¥Ñ¡¼¤Ï»È¤ï¤Ê¤¤¤Ç

ÊÌÅÓajax¤òÁȤ߹þ¤ß¤Þ¤·¤ç¤¦¡£

=== Text¥Ø¥ë¥Ñ¡¼ ===

* ²¿Ê¸»ú¶èÀÚ¤ê¤È¤«¤Ç¤­¤ë¡£

=== Number¥Ø¥ë¥Ñ¡¼ ===

* Íð¿ô¤È¤«¡¢É½¼¨¥Õ¥©¡¼¥Þ¥Ã¥È¤È¤«

=== Time¥Ø¥ë¥Ñ¡¼ ===

* ÆüÉÕ¼èÆÀ

* ËÜÆü¤«¥Á¥§¥Ã¥¯¤È¤«¡¢º£½µ¤«¥Á¥§¥Ã¥¯¤È¤«¤¬¤Ç¤­¤ë¡£


== ¥ë¡¼¥Æ¥£¥ó¥° ==

* ¥ë¡¼¥Æ¥£¥ó¥°¤È¤Ï¡¢URL¤«¤é¥³¥ó¥È¥í¡¼¥é¤È¥¢¥¯¥·¥ç¥ó̾¤ò»ØÄꤹ¤ë¤³¤È¡£

* ¥ë¡¼¥Æ¥£¥ó¥°¤Ï¡¢app/config/routes.php¤Ë¾ðÊó¤òµ­ºÜ¤¹¤ë¤³¤È¤Ç¤Ç¤­¤ë¤è¤¦¤Ë¤Ê¤ë¡£

* CakePHP¤Î¥Ç¥£¥¹¥Ñ¥Ã¥Á¥ã¡¼½èÍýÆâ¤Ç¥³¡¼¥ë¤µ¤ì¡¢¼Â¹Ô½àÈ÷¤·¤Þ¤¹¡£

=== ¤Ç¤­¤ë¤³¤È ===

* index¤ÎÊѹ¹

* ÆÈ¼«URL¤ÎÀßÄê

* ̾Á°Éեѥé¥á¡¼¥¿¤ÎÀßÄê

* ̾Á°Éեѥé¥á¡¼¥¿¤Ë±þ¤¸¤Æ¿¶¤êʬ¤±

* ¥¯¥¨¥ê¥¹¥È¥ê¥ó¥°¤ÎÀ¸À®/ÄɲÃ

* ....

== ACL ==

* ½ÀÆðÀ­¤Î¤¢¤ë¥¢¥¯¥»¥¹´ÉÍý(¥°¥ë¡¼¥×¤ä½ê°Éô½ð¤Ç¤Î´ÉÍý¤Ê¤É)

* ¥¢¥¯¥»¥¹¥³¥ó¥È¥í¡¼¥ë¥ê¥¹¥È

=== ¤Ê¤Ë¤¬¤Ç¤­¤ë¤« ===

* A¤µ¤ó¤¬£±È֤ξì½ê¤Î½ñ¤­¹þ¤ß¤òµö²Ä¤·¤Æ¤¤¤ë¤«¡©¤È¤¤¤¦¤³¤È¤¬´ÉÍý¤Ç¤­¤ë¡£

* ¥°¥ë¡¼¥×´ÉÍý¤â²Äǽ

* Âç»ö¤Ê¤Î¤Ï¡¢ACL¤Ïǧ¾Ú(Auth)¤Ç¤Ï¤Ê¤¯¡¢DB¤Ø¤Î¥¢¥¯¥»¥¹¸¢¤È¤¤¤¦¤³¤È¡£

* ǧ¾Ú¤ËÍí¤á¤ë¾ì¹ç¤ÏAuth¤È¤ÎÏ¢·È¤¬É¬Íס£

=== »È¤¤Êý ===

* ACLÍѤΥǡ¼¥¿¥Ù¡¼¥¹¤òÍѰա£

* ¼«Á°¤â¤¤¤¤¤·¡¢¥³¥ó¥½¡¼¥ë¤«¤éºîÀ®¤â¤Ç¤­¤ë¡£

{{{

* php /path/to/cake/console/cake.php acl initdb //1.3

* php /path/to/cake/console/cake.php schema run create DbAcl //1.2

}}}

* core.phpÆâ¤ËACL¤Ë´Ø¤¹¤ëÀßÄê¤ò¹Ô¤¦¡£

{{{

Configure::write("Acl.classname", "DbAcl");

Configure::write("Acl.database", "default");

}}}

* Configure::write("Acl.classname", "DbAcl"); ¤Ï¥Ç¡¼¥¿¥Ù¡¼¥¹¤òÍøÍѤ¹¤ëÀßÄê

* Configure::write("Acl.classname", "iniAcl"); ¤Ïini¥Õ¥¡¥¤¥ë¥Ù¡¼¥¹

* ARO¤ÎÅÐÏ¿(¥æ¡¼¥¶¤ä¥°¥ë¡¼¥×¤Ê¤ÉÁàºî¼çÂÎ)

* ACO¤ÎÅÐÏ¿(ÁàºîÂоݥơ¼¥Ö¥ë)

* ¥æ¡¼¥¶¤ä¥°¥ë¡¼¥×¤Ê¤ÉÁàºî¼çÂΤÎÅÐÏ¿

* ARO¤ÎACO¤ËÂФ¹¤ë¥¢¥¯¥»¥¹·ïÀßÄê¤ò¹Ô¤¦¡£

* deny¤«allow

== ¥­¥ã¥Ã¥·¥å ==

* ¾Êά

== ¥³¥¢¥é¥¤¥Ö¥é¥ê ==

* ÈÆÍÑŪ¤Êµ¡Ç½¤ò¤Þ¤È¤á¤¿¥¯¥é¥¹¡£

* control model view¤É¤ì¤Ç¤âÍøÍѤǤ­¤ë¡£

=== basics.php ===

* config(); ¡§¥³¥ó¥Õ¥£¥°¥Õ¥¡¥¤¥ë¤ÎÆÉ¤ß¹þ¤ß

* uses() : ¥é¥¤¥Ö¥é¥ê¥Õ¥¡¥¤¥ë(cale/libsÇÛ²¼¤Î¥Õ¥¡¥¤¥ë¤¬ÆÉ¤ß¹þ¤á¤ë)

* getMicroTime(): float·Á¼°¤Î¥Þ¥¤¥¯¥íÉ䬼èÆÀ¤Ç¤­¤ë¡£

* sortByKey() : ¥­¡¼¤ò¥½¡¼¥ÈÂоݤȤ·¤¿ÇÛÎó¤ÎʤÓÂØ¤¨

* h():htmlspecialchar

* a():array()

* file_put_contents() : ¥Õ¥¡¥¤¥ë¤Ø¤Î½ñ¤­½Ð¤·

* __() : »ØÄêñ¸ì¤òËÝÌõ¤¹¤ë¡£(app/locale/(Ãϰè)/LC_MESSAGE/default.po)¤Î¥ê¥¹¥È¤Ë½àµò¤¹¤ë¡£

* __n(): Ê£¿ô·Á¤ò¹Íθ

=== App ===

* import :¿µ¡Ç½includ require

*

=== Set ===

* Ï¢ÁÛÇÛÎó°·¤¤¡£

=== HttpSocket¥¯¥é¥¹ ===

* cake¤ÇHttpÄÌ¿®(¥ê¥¯¥¨¥¹¥È¤òÁ÷¤ê¡¢Ìá¤êÃͤòÆÀ¤ë¡£)

* ÉáÄ̤ËPHP¤ÇÄÌ¿®¤¹¤ë¾ì¹ç¤Ï¤É¤¦¤¹¤ë¤ó¤À?

=== CakeSOket ===

* FTP¤äPOP

=== Sanitize ===

* paranoid(); ±Ñ¿ô»ú°Ê³°¤ò½üµî

* escape() : ¥µ¥Ë¥¿¥¤¥º ¥Ç¡¼¥¿¥Ù¡¼¤Ë±þ¤¸¤Æ¡¢ÊÑ´¹ÆâÍÆ¤¬ÊѤï¤ë¡£

* html() : htmlÍÑ¥µ¥Ë¥¿¥¤¥º

* stripWhitespace() : ¶õÇò ²þ¹Ô ¥¿¥Ö¤Îºï½ü

* stripXXXX()¥·¥ê¡¼¥º¤Ç¤¤¤í¤¤¤í¸ÄÊ̤˽üµî¤Ç¤­¤ë¡£


== ¥³¥ó¥½¡¼¥ë ==


== ¤½¤Î¾Êä­ ==

=== ¡úCake¤ÎÄê¿ô ===

* ¤³¤³¤Ïɬ¿Ü!!³«È¯¤¹¤ëÁ°¤ËËè²ó³Îǧ¤¹¤ë!

=== ¡úCakePHP¤Î½èÍý¤Îή¤ì (¤¬¤Ã¤Á¤êÍý²ò¤·¤Ê¤µ¤¤) ===

* Â礭¤Êή¤ì:index.php ¢ª dispactcher ¢ª¥³¥ó¥È¥í¡¼¥é¡¼(¥â¥Ç¥ë) ¢ªview

¢ª¥³¥ó¥È¥í¡¼¥é¡¼¢ªdispacher.php¢ªindex.php¤È¤¤¤¦Î®¤ì

* ­¡ webroot/index.php¤Ë¥¢¥¯¥»¥¹

* .htaccess¤Çmod_rewrite¤Ç¤­¤ë¤Î¤Ç³¬Áؤ¬¤µ¤¬¤Ã¤Æ¤âµ¤¤Ë¤·¤Ê¤¤¡£

* index.php¤Ç¤Ï¡¢¥Õ¥ì¡¼¥à¥ï¡¼¥¯¤ò¶îư¤¹¤ë¤¿¤á¤ÎÁ°½àÈ÷½èÍý¤ò¹Ô¤¦¤Î¤ß¡£

* ¥Õ¥ì¡¼¥à¥ï¡¼¥¯Æâ¤ÇÄêµÁ¤µ¤ì¤¿Ãͤä´ðËÜŪ¤Ê´Ø¿ô¥é¥¤¥Ö¥é¥ê¤òÆÉ¤ß¹þ¤ó¤À¤¢¤Èdispacher.php¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¡£

* ­¢cake/dispacher.php

* dispacher.php¤Ç¤Ï¤Þ¤º¡¢GET²½¤µ¤ì¤¿URL¤«¤é¡Ö¥³¥ó¥È¥í¡¼¥é/¥¢¥¯¥·¥ç¥ó/¥Ñ¥é¥á¡¼¥¿¡×¤Ëʬ³ä

* ÌÜɸ¤È¤Ê¤ë¥³¥ó¥È¥í¡¼¥é¤ò¸Æ¤Ó½Ð¤¹¡£

* URL¤Î²òÀϤϡÖcake/libs/router.php¡×¤¬¹Ô¤¤¡Öapp/config/routes.php¡×¤Ë½ñ¤«¤ì¤¿¥ë¡¼¥Æ¥£¥ó¥°¾ðÊó¤òÍѤ¤¤ë¡£

* ¤³¤Î¾ðÊó¤ò¸µ¤Ë¡¢¥³¥ó¥È¥í¡¼¥é¤¬ÀßÄꤹ¤ë¡£

* ­£¥³¥ó¥È¥í¡¼¥é¡¼

* cake/libs/controllers/controller.php ¤ò·Ñ¾µ¤·¤Æ¤¤¤ë¡£

*

php¤Îcgi¤È¥×apache¥â¥¸¥å¡¼¥ëÈǤΰ㤤

²¿¸ÎPHP¤ÏÆÃ¤ËÀßÄêÉÔÍפǡ¢HTMLÎΰè¤Ç²Ôư¤¹¤ë¤Î¤«¡£²¿¸Îperl¤ä¥Ñ¥¤¥½¥ó¤ÏCGIÀßÄê¤Ê¤É¤¬É¬ÍפʤΤ«¡©

>>¤¤¤í¤¤¤íÀßÄꤷ¤¿»þ¤Î´ðËÜŪ¤Êµ¿Ìä¤Ç¤¹¤¬¡£¡£²¼µ­¤Î²ò¼á¤Ç¤¢¤Ã¤Æ¤ë¤«¤È¡£<<

  • CGI¤È¤Ï¥×¥í¥°¥é¥à¼Â¹Ô¤Î»ÅÁȤߡ£Æ±·ÏÎó¤Î¸ÀÍդȤ·¤Æ¥â¥¸¥å¡¼¥ë¤¬¤¢¤ë¡£

ÍÑÎã¡§perl¤òCGI¤Çư¤«¤¹

¡¡¡¡¡¡ perl¤òapache¥â¥¸¥å¡¼¥ë¤Çư¤«¤¹¡£

  • (load_¥â¥¸¥å¡¼¥ë¤¹¤ì¤Ð¡¢¥â¥¸¥å¡¼¥ë¤È¤·¤ÆÆ°¤«¤¹)

PHP_CGIÈǤȥ⥸¥å¡¼¥ëÈǤΰ㤤

CGI

CGIÈǤȸÀ¤ï¤ì¤ë¤â¤Î¤Ï¡¢Web¥µ¡¼¥Ð¡¼¤Ç¤¢¤ëApache¤È¤ÏÊÌ¥×¥í¥»¥¹¤Çưºî¤µ¤»¤ëPHP¤È¤¤¤¦°ÕÌ£¹ç¤¤¤¬¶¯¤¤¤Ç¤¹¡£

¼ÂºÝ¤Ë¡¢CGI¤È¤Ï¡¢Common Gateway

Interface¤Îά¤Ç¡¢Web¥µ¡¼¥Ð¡¼¤¬¡¢Web¥Ö¥é¥¦¥¶¤«¤é¤ÎÍ×µá¤Ë±þ¤¸¤Æ¡¢¥×¥í¥°¥é¥à¤òµ¯Æ°¤¹¤ë¤¿¤á¤Î»ÅÁȤߤò¸À¤¤¤Þ¤¹¡£

CGIÈÇ{{php¤È¤¤¤¦³ÈÄ¥»Ò¤Î¥Õ¥¡¥¤¥ë¤ò¡¢php-cgi.exe¤È¤¤¤¦¼Â¹Ô¥Õ¥¡¥¤¥ë¤ËÅϤ·¤Æ¼Â¹Ô¤·¤Ê¤µ¤¤¡£}}

CGI ÈÇ¡§PHP¥×¥í¥°¥é¥à¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¤¿¤Ó¤Ë¥×¥í¥»¥¹¤¬1¤ÄΩ¤Á¾å¤¬¤ë

¥â¥¸¥å¡¼¥ë(apache¥×¥í¥»¥¹¤È¤·¤Æ¼Â¹Ô¡£)

php¤È¤¤¤¦³ÈÄ¥»Ò¤Î¥Õ¥¡¥¤¥ë¤ò¡¢php5apache2.dll¤È¤¤¤¦DLL¥é¥¤¥Ö¥é¥ê¤ËÅϤ·¤Æ¤¤¼Â¹Ô¤·¤Ê¤µ¤¤¡£}}}

¤Ä¤Þ¤ê¡¢¥â¥¸¥å¡¼¥ëÈǤȸÀ¤ï¤ì¤ë¤â¤Î¤Ï¡¢Web¥µ¡¼¥Ð¡¼¤Ç¤¢¤ëApache¤ÈƱ¤¸¥×¥í¥»¥¹¤Ç

ưºî¤µ¤»¤ëPHP¤È¤¤¤¦°ÕÌ£¹ç¤¤¤¬¶¯¤¤¤Ç¤¹¡£

¥â¥¸¥å¡¼¥ëÈÇ¡§Apache¤Î¥×¥í¥»¥¹¤ÎÃæ¤Ç¼Â¹Ô¤µ¤ì¤ë¤¿¤á¡¢Í¾Ê¬¤Ê¥×¥í¥»¥¹¤òΩ¤Á¾å¤²¤ëɬÍפ¬¤Ê¤¤

phpinfo() ¤Î Server API¤Î¹àÌܤò¸«¤ë¤ÈȽÊ̤¹¤ë¤³¤È¤¬¤Ç¤­¤ë¡£

¤Á¤ç¤Ã¤ÈÈæ³Ó

¢¨¤É¤Ã¤«¤«¤é»²¾È¤·¤¿Ê¸¤À¤±¤É¡¢¤É¤³¤Ë¤«¤¤¤Æ¤¤¤¿¤«¡£¡£

­¡cake

http://www.phppro.jp/article/framework/cakephp.php

<ÆÃħ>
  • ruby on rails¤Î±Æ¶Á¤ò¼õ¤±¤Æ¤¤¤ë¡£(MVC¥â¥Ç¥ë scafoldµ¡Ç½¤¢¤ê¡¡(DBÀܳ¥Õ¥©¡¼¥à¤ÎºîÀ®¤ò°ì½Ö¤Ç²Äǽ¤Ë))
  • PHP4. 5 ξÊý¤ÇƱưºî
  • apche¤Ê¤ÉWEB¥µ¡¼¥Ð¤ÎÀßÄêÊѹ¹¤¬ÉÔÍ×
  • pear¤Ê¤É¤Î³°Éô¥é¥¤¥Ö¥é¥ê¤¬ÉÔÍ×

­¢symphony

<ÆÃħ>
  • MVCµ¡Ç½
  • PHP5.1°Ê¹ß
  • ¥é¥°¥¤¥ó¤ò»È¤Ã¤Æ³ÈÄ¥
  • YAML¤ÇÀßÄê
  • PDF¤Ç300¥Ú¡¼¥¸¤Ë¤â¤Ê¤ë¥É¥­¥å¥á¥ó¥È¤ä¡¢code snippet¤ËÅÐÏ¿¤µ¤ì¤¿Â¿¤¯¤Î¥µ¥ó¥×¥ë¥³¡¼¥É¤Ê¤É¡¢¾ðÊóÎ̤¬°µÅÝŪ¤Ê¤Î¤¬ÆÃħ¤Ç¤¹¡£
  • Â絬Ìϳ«È¯¤Ç¤Î¼ÂÀÓ¤¬Ë­ÉÙ(ÊÆYahoo! del.icio.us )
  • ¥ª¥Ö¥¸¥§¥¯¥È»Ø¸þ

­£Zend Framework

php¥Þ¥¸¥Ã¥¯¥á¥½¥Ã¥É¤È¤Ï

¥Þ¥¸¥Ã¥¯¥á¥½¥Ã¥É¤È¤Ï

  • __(¥¢¥ó¥¹¥³Æó¤Ä)¤«¤é»Ï¤Þ¤ë¥Ç¥Õ¥©¥ë¥ÈÄêµÁºÑ¤ß¤Î¥á¥½¥Ã¥É¡£
  • ´ðËÜŪ¤Ë¤½¤ì¤òľÀܸƤӽФ¹¤Î¤Ç¤Ï¤Ê¤¯¡¢ÆÃÄê¤Î¥¿¥¤¥ß¥ó¥°¤ÇPHP¤«¤é¸Æ¤Ó½Ð¤µ¤ì¤ë¡£
  • ¥³¡¼¥ë¥Ð¥Ã¥¯¥Ý¥¤¥ó¥È¤ß¤¿¤¤¤Ê¤â¤Î¡£
__construct() / __destruct()¥á¥½¥Ã¥É
__get() / __set()
  public function __get($name)
  {
       return $this->get($name);
  }
__isset() / __unset() ==
__ToString()
__clone()

PHP¤Ç¥Ð¥Ã¥Á½èÍý


¤½¤â¤½¤âPHP¤Ç¥Ð¥Ã¥Á¤Ã¤Æ¤«¤±¤ë¤Î?

4.3 °Ê¹ß¤Ç PHP ¤Ï Command Line Interface ¤ò°ÕÌ£¤¹¤ë CLI ¤È¤¤¤¦Ì¾Á°¤Î¿·¤·¤¤ SAPI ·¿

(Server Application Programming Interface)¤ò¥µ¥Ý¡¼¥È¤·¤Þ¤¹¡£

CLI¤ÈSAPI¤Î°ã¤¤

  • CGI SAPI ¤È°Û¤Ê¤ê¡¢¥Ø¥Ã¥À¤¬½ÐÎϤµ¤ì¤Þ¤»¤ó¡£¸Å¤¤ CGI ¥¹¥¯¥ê¥×¥È¤È¸ß´¹À­¤ò ÊݤäƻȤ¨¤ë¤è¤¦¤Ë -q ¥¹¥¤¥Ã¥Á¤¬»Ä¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

¥³¥Þ¥ó¥É¥é¥¤¥óÍѤÎÄê¿ô(ÆþÎϤò¼õ¤±¼è¤Ã¤¿¤ê¤Ç¤­¤ë¡ª)


STDIN
  • stdin ¤Ø¤Î¥ª¡¼¥×¥óºÑ¤ß¤Î¥¹¥È¥ê¡¼¥à¡£ ¤³¤ì¤Ë¤è¤ê¡¢°Ê²¼¤Î¤è¤¦¤Ë¥ª¡¼¥×¥ó¤¹¤ëɬÍפ¬¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£
    $stdin = fopen('php://stdin', 'r');
  • stdin ¤«¤é1¹ÔÆÉ¤ß¹þ¤ß¤¿¤¤¾ì¹ç¡¢°Ê²¼¤Î¤è¤¦¤Ë¤·¤Þ¤¹¡£
    $line = trim(fgets(STDIN)); // STDIN ¤«¤é 1 ¹ÔÆÉ¤ß¹þ¤à
    fscanf(STDIN, "%d\n", $number); // STDIN ¤«¤é¿ôÃͤòÆÉ¤ß¹þ¤à
STDOUT
  • stdout ¤Ø¤Î¥ª¡¼¥×¥óºÑ¤ß¤Î¥¹¥È¥ê¡¼¥à¡£ ¤³¤ì¤Ë¤è¤ê¡¢°Ê²¼¤Î¤è¤¦¤Ë¥ª¡¼¥×¥ó¤¹¤ëɬÍפ¬¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£
    $stdout = fopen('php://stdout', 'w');
STDERR
  • stderr ¤Ø¤Î¥ª¡¼¥×¥óºÑ¤ß¤Î¥¹¥È¥ê¡¼¥à¡£ ¤³¤ì¤Ë¤è¤ê¡¢°Ê²¼¤Î¤è¤¦¤Ë¥ª¡¼¥×¥ó¤¹¤ëɬÍפ¬¤Ê¤¯¤Ê¤ê¤Þ¤¹¡£
    $stderr = fopen('php://stderr', 'w');

php-devel¤È¤Ï

  • devel·Ï¤Ïphp-devel¤È¤«Á°¤Ë¤Ä¤¯¥â¥¸¥å¡¼¥ë(¤³¤³¤Ç¤Ïphp)¤ò³ÈÄ¥¤¹¤ë¤¿¤á¤Î¥é¥¤¥Ö¥é¥ê¡£
  • ¼Â¹Ô´Ä¶­¤È¤·¤ÆÉ¬ÍפʤÀ¤±¤Ê¤é´ðËÜŪ¤ËÉÔÍפȻפï¤ì¤ë¡£
    • ¤Á¤Ê¤ß¤Ë¥Ñ¥Ã¥±¡¼¥¸¤ÎÃæ¿È¤¬²¿¤«¤ï¤«¤é¤Ê¤¤¾ì¹ç¤Ï, yum info ¥Ñ¥Ã¥±¡¼¥¸Ì¾¤Ç³Îǧ¤Ç¤­¤ë¡ª

php¤Ë¤ª¤±¤ë¥Õ¥¡¥¤¥ë¥À¥¦¥ó¥í¡¼¥É»þ¤Ë¥Õ¥¡¥¤¥ë¤ò³«¤¯¤«¡¢¥À¥¦¥ó¥í¡¼¥É¤¹¤ë¤«¤Ë¤Ä¤¤¤Æ

¾¡¼ê¤Ë³«¤¯¤«¡¢¥À¥¦¥ó¥í¡¼¥É¤È¤«¤òÁªÂò¤Ç¤­¤ë¤«¤Ï¡¢²¼µ­¤ÎÀßÄê¤ÇÊѹ¹¤¹¤ë¡£

 // ¥Ö¥é¥¦¥¶(¥×¥é¥°¥¤¥ó¡©)¤Ç³«¤¯
 header("Content-Disposition: inline; filename=XXXXXX");
 //¥À¥¦¥ó¥í¡¼¥É¥À¥¤¥¢¥í¥°¤ò³«¤¯¡£
 header("Content-Disposition: attachment; filename=XXXXXX");

¤É¤Á¤é¤Ë¤·¤í¥Ö¥é¥¦¥¶¤ÎÀßÄ꤬ºÇÍ¥Àè¤Ã¤Ý¤¤¤Î¤Ç³Î¼Â¤Ë¤Ï̵Íý¤È»×¤ï¤ì¤Þ¤¹¡£

³Î¼Â¤ÊÊýË¡¤´Â¸ÃΤÎÊý¤¬¤¤¤¿¤é¾ðÊ󤯤À¤µ¤¤¡£

readfileÍøÍѾå¤ÎÃí°Õ

¥Õ¥¡¥¤¥ë¤ò¥À¥¦¥ó¥í¡¼¥É¤µ¤»¤ë¤È¤­readfile()¤ò¤Ä¤«¤¦¤È¡¢°ì²ó¥á¥â¥ê¾å¤ËÁ´¤Æ¤ò¥Ð¥Ã¥Õ¥¡¤¹¤ë¤Î¤Ç¡¢¾å¸ÂÃͤÈʪÍý¥á¥â¥ê¥µ¥¤¥º¤Î±Æ¶Á¤ò¼õ¤±¤ë¡£

ADO.NET¤Ê¤ÉÍѸ줬¤³¤ó¤¬¤é¤¬¤Ã¤¿¤Î¤ÇÀ°Íý


http://www.atmarkit.co.jp/fdotnet/aspexp/aspexp03/aspexp03_01.html

OLE DB (Object Linking and Embedding, Database)

¤Ï¥Þ¥¤¥¯¥í¥½¥Õ¥È¤ÎÀ߷פ·¤¿API¤Ç¤¢¤ê¡¢°ìÍͤʷÁ¤Ç³ÊǼ¤µ¤ì¤Æ¤¤¤ëÍÍ¡¹¤Ê¼ïÎà¤Î¥Ç¡¼¥¿¤Ø¤Î¥¢¥¯¥»¥¹¤ò¹Ô¤¦¤â¤Î¤Ç¤¢¤ë¡£OLEDB¡¢OLE-DB

¤È¤âɽµ­¤¹¤ë¡£Component Object Model (COM)

¤ò»È¤Ã¤Æ¼ÂÁõ¤µ¤ì¤¿¥¤¥ó¥¿¥Õ¥§¡¼¥¹·²¤Ç¤¢¤ê¡¢¤½¤Î¤¿¤áOLE¤È´Ø·¸¤¬¤¢¤ë¡£ODBC¤ò¤è¤êÃê¾Ý²½¤·¤¿·Á¤ÇÃÖ´¹¤¹¤ë¤â¤Î¤Ç¡¢´Ø·¸¥Ç¡¼¥¿¥Ù¡¼¥¹°Ê³°¤Î³Æ¼ï¥Ç¡¼¥¿¥Ù¡¼¥¹¤â¥µ¥Ý¡¼¥È¤¹¤ë¤è¤¦³ÈÄ¥¤µ¤ì¤Æ¤¤¤ë¡£¥ª¥Ö¥¸¥§¥¯¥È¥Ç¡¼¥¿¥Ù¡¼¥¹¡¢É½·×»»¥½¥Õ¥È¤Ê¤ÉSQL¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Ê¤¤¤â¤Î¤Ë¤âÂбþ¤·¤Æ¤¤¤ë¡£

OLE DB ¤Ï³µÇ°Åª¤Ë¡Ö¥³¥ó¥·¥å¡¼¥Þ (consumer)¡×¤È¡Ö¥×¥í¥Ð¥¤¥À

(provider)¡×¤Ëʬ¤±¤é¤ì¤ë¡£¥³¥ó¥·¥å¡¼¥Þ¤È¤Ï¥Ç¡¼¥¿¤Ë¥¢¥¯¥»¥¹¤¹¤ëɬÍפΤ¢¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤Ç¤¢¤ê¡¢¥×¥í¥Ð¥¤¥À¤Ï¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò¼ÂÁõ¤·¤¿¥½¥Õ¥È¥¦¥§¥¢¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ç¡¢¥³¥ó¥·¥å¡¼¥Þ¤Ë¥Ç¡¼¥¿¤òÄ󶡤¹¤ë¡£OLE

DB ¤Ï Microsoft Data Access Components (MDAC)

¥¹¥¿¥Ã¥¯¤Î°ìÉô¤Ç¤¢¤ë¡£MDAC¤ÏÁê¸ß¤ËÏ¢·È¤·¤Æ¥Õ¥ì¡¼¥à¥ï¡¼¥¯¤È¤·¤Æµ¡Ç½¤¹¤ë¥Þ¥¤¥¯¥í¥½¥Õ¥È¤ÎÊ£¿ô¤Îµ»½Ñ¤ò½¸Ìó¤·¤¿¤â¤Î¤Ç¡¢¥×¥í¥°¥é¥Þ¤ËÂФ·¤ÆÍÍ¡¹¤Ê¥Ç¡¼¥¿¥¹¥È¥¢¤Ë¥¢¥¯¥»¥¹¤¹¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤ò°ì´Ó¤·¤¿ÊýË¡¤Ç³«È¯¤¹¤ë¼êÃʤòÄ󶡤¹¤ë¡£OLE

DB ¥×¥í¥Ð¥¤¥À¤Ï¡¢¥Æ¥­¥¹¥È¥Õ¥¡¥¤¥ë¤äɽ·×»»¥½¥Õ¥È¤Ê¤É¤Îñ½ã¤Ê¥Ç¡¼¥¿¥¹¥È¥¢¤Ø¤Î¥¢¥¯¥»¥¹ÍѤ˺îÀ®¤Ç¤­¡¢Oracle¡¢SQL

Server¡¢Sybase ASE

¤Ê¤É¤ÎÊ£»¨¤Ê¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ø¤Î¥¢¥¯¥»¥¹ÍѤˤâºîÀ®¤Ç¤­¤ë¡£¤Þ¤¿¡¢ÅŻҥ᡼¥ë¥·¥¹¥Æ¥à¤Î¤è¤¦¤Ê³¬ÁØ·¿¥Ç¡¼¥¿¥â¥Ç¥ë¤Ø¤Î¥¢¥¯¥»¥¹¤âÄ󶡤Ǥ­¤ë¡£

MDAC

Microsoft¼Ò¤¬Ä󶡤¹¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹¥¢¥¯¥»¥¹¤Î¤¿¤á¤Î¥×¥í¥°¥é¥àÉôÉʤν¸¹ç¡£ADO¡¢ODBC¡¢OLE

DB¤Î³Æ¥³¥ó¥Ý¡¼¥Í¥ó¥È¤«¤é¹½À®¤µ¤ì¤ë¡£¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¥á¡¼¥«¡¼¤Î°ã¤¤¤ä¼ïÎà¤Î°ã¤¤¤Ë¤è¤é¤Ê¤¤Åý°ìŪ¤Ê¥Ç¡¼¥¿¥Ù¡¼¥¹¥¢¥¯¥»¥¹¤òÄ󶡤¹¤ë¡£

OLE(MSÀ½) Object Linking and Embedding

¡ÊOLE¡¢¥ª¥Ö¥¸¥§¥¯¥È¤Î¥ê¥ó¥¯¤ÈËä¤á¹þ¤ß¡Ë¤Ï¡¢¥Þ¥¤¥¯¥í¥½¥Õ¥È¤¬ºî¤Ã¤¿¡¢¥ª¥Ö¥¸¥§¥¯¥È¤ò¤ä¤ê¼è¤ê¤¹¤ë¤¿¤á¤Î»ÅÁȤߡ¦µ¬Ìó¤Ç¤¢¤ë¡£

OLE¤Ïʸ½ñ¤Î°ìÉôʬ¤ò¾¤Î¥½¥Õ¥È¤ÇÊÔ½¸¤µ¤»¡¢¤½¤ì¤ò¸µ¤Îʸ½ñ¤Ë¼è¤ê¹þ¤à¤³¤È¤â²Äǽ¤Ë¤·¤Æ¤¤¤ë¡£¤¿¤È¤¨¤Ð¡¢DTP¤Ç¤Ï¡¢¥Æ¥­¥¹¥È¤ò¥ï¡¼¥×¥í¥½¥Õ¥È¡¢¿Þ¤ò¥Ú¥¤¥ó¥È¥Ä¡¼¥ë¤ÇÊÔ½¸¤¹¤ë¤È¤¤¤Ã¤¿¶ñ¹ç¤Ç¤¢¤ë¡£¤Þ¤¿¡¢Â¾¤Î¥Ç¡¼¥¿¤Ø¤Î»²¾È¤òʸ½ñ¤Ë´Þ¤á¤ë¤³¤È¤â¤Ç¤­¡¢¤½¤Î¾ì¹ç»²¾ÈÀè¤Î¥Ç¡¼¥¿¤¬Êѹ¹¤µ¤ì¤ë¤È¡¢»²¾È¤¬´Þ¤Þ¤ì¤ëʸ½ñ¤Ë¤â¨ºÂ¤Ë¤½¤ÎÊѹ¹¤¬È¿±Ç¤µ¤ì¤ë¡£

OLE¤Î½é´ü¤ÎÍÑÅÓ¤ÏÊ£¹çʸ½ñ¤Î´ÉÍý¤Î¤¿¤á¤Ç¤¢¤ë¤¬¡¢¥É¥é¥Ã¥°¥¢¥ó¥É¥É¥í¥Ã¥×¤ä¥¯¥ê¥Ã¥×¥Ü¡¼¥É¤Ë¤è¤ë¥¢¥×¥ê¥±¡¼¥·¥ç¥ó´Ö¤Ç¥Ç¡¼¥¿¤ÎžÁ÷¤Î¤¿¤á¤Ë¤â»È¤ï¤ì¤¿¡£

ODBC(MSÀ½)

Open Database Connectivity¡ÊODBC¡Ë¤Ï¡¢RDBMS¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤¿¤á¤Î¶¦ÄÌ¥¤¥ó¥¿¥Õ¥§¡¼¥¹ (API)¤Ç¤¢¤ë¡£

¥Ç¡¼¥¿¤Ø¤Î¥¢¥¯¥»¥¹¤òÅý°ì²½¤¹¤ë¤³¤È¤òÌÜŪ¤È¤·¤Æ¤ª¤ê¡¢¤¿¤È¤¨¤Ð¥¯¥é¥¤¥¢¥ó¥È¡¿¥µ¡¼¥Ð·¿¤Ç¤Ï¤Ê¤¤Microsoft

Access¤Î´ÉÍý¤¹¤ë¥Ç¡¼¥¿¥Ù¡¼¥¹¥Õ¥¡¥¤¥ë

(MDB)¤ä¡¢¤½¤â¤½¤âRDBMS¤Ç¤Ï¤Ê¤¤CSV¥Õ¥¡¥¤¥ë¤Ø¤Î¥¢¥¯¥»¥¹¤Ê¤É¤â¡¢¤½¤ì¤ËÂбþ¤¹¤ëODBC¥É¥é¥¤¥Ð¤¬¤¢¤ì¤Ð¡¢Â¾¤Î°ìÈÌŪ¤Ê¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ø¤Î¥¢¥¯¥»¥¹¤¹¤ë¤Î¤ÈƱÍͤÊÊýË¡¤ÇÍøÍѤ¹¤ë¤³¤È¤¬²Äǽ¤Ë¤Ê¤ë¡£

DBI/DBD

DBI/DBD¤È¤Ï¡¢perl¤È¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î´Ö¤ò¤È¤ê¤â¤Ã¤Æ¤¯¤ì¤ëÈÆÍÑ¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤Ç¤¹¡£

DBI¥â¥¸¥å¡¼¥ë¤ÈDBD¥â¥¸¥å¡¼¥ë¤«¤é¤Ç¤­¤Æ¤ª¤ê¡¢DBD¥â¥¸¥å¡¼¥ë¤Ï¡¢³Æ¥Ç¡¼¥¿¥Ù¡¼¥¹¤´¤È¤Ë¸ºß¤·¤Þ¤¹¡£¥×¥í¥°¥é¥Þ¤Ï¡¢DBI¥â¥¸¥å¡¼¥ë¤Î¥ë¡¼¥ë¤Ë¤·¤¿¤¬¤Ã¤Æ¥×¥í¥°¥é¥ß¥ó¥°¤¹¤ë¤³¤È¤Ç¡¢¤É¤Î¤è¤¦¤Ê¥Ç¡¼¥¿¥Ù¡¼¥¹¤Ë¤â¡¢Æ±¤¸¤è¤¦¤Ë¥¢¥¯¥»¥¹¤¹¤ë¥×¥í¥°¥é¥à¤ò½ñ¤¯¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£

ADO

Activex Database OLE

ActiveX Data Objects (ADO)¤Ï¥Ç¡¼¥¿¥½¡¼¥¹¥¢¥¯¥»¥¹¤òÌÜŪ¤È¤·¤¿COM¥ª¥Ö¥¸¥§¥¯¥È¤Î¥»¥Ã¥È¤Ç¤¢¤ë¡£

ADO¤ÏOLE DB¤È¥×¥í¥°¥é¥ß¥ó¥°¸À¸ì¤ò²ðºß¤·¤Æ¤ª¤ê¡¢¥×¥í¥°¥é¥ß¥ó¥°¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤È¤·¤Æµ¡Ç½¤¹¤ë¡£³«È¯¼Ô¤Ï¤³¤ì¤òÍѤ¤¤ë¤³¤È¤Ç¡¢¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¼ÂÁõ¤ò°Õ¼±¤»¤º¤Ë¥³¡¼¥É¤ò½ñ¤±¤ë¡£

COM

Component Object Model¡ÊCOM¡¢¥³¥ó¥Ý¡¼¥Í¥ó¥È¡¦¥ª¥Ö¥¸¥§¥¯¥È¡¦¥â¥Ç¥ë¡Ë¤È¤Ï¡¢¥Þ¥¤¥¯¥í¥½¥Õ¥È

¤¬Ä󾧤¹¤ë¥½¥Õ¥È¥¦¥§¥¢¤ÎºÆÍøÍѤòÌÜŪ¤È¤·¤¿µ»½Ñ¤Î¤³¤È¤Ç¤¢¤ë¡£¥½¥Õ¥È¥¦¥§¥¢´Ö¤Ç¤ÎÄÌ¿®¤ËÍѤ¤¤é¤ì¤ë¡£

COM¤ò»ÈÍѤ·¤Æ³«È¯¤µ¤ì¤¿¥½¥Õ¥È¥¦¥§¥¢¤òCOM¥³¥ó¥Ý¡¼¥Í¥ó¥È¤È¸Æ¤Ö¡£COM¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ï¡¢ÆÃÄê¤Î³«È¯¸À¸ì¤Ë°Í¸¤»¤º¡¢C¸À¸ì¤äJava¤Ê¤É¡¢ÍÍ¡¹¤Ê¸À¸ì¤Ë¤è¤ê³«È¯¤ò¹Ô¤¦¤³¤È¤¬¤Ç¤­¤ë¡£COM¤È¤¤¤¦ÍѸì¤Ï¥½¥Õ¥È¥¦¥§¥¢³«È¯¤ÎÀ¤³¦¤Ç¤ÏOLE¡¢OLE¥ª¡¼¥È¥á¡¼¥·¥ç¥ó¡¢ActiveX¡¢COM+¡¢DCOM¤ò¥«¥Ð¡¼¤¹¤ëÊñ³çŪ¤ÊÍѸì¤È¤·¤Æ¤è¤¯»È¤ï¤ì¤ë¡£COM¥³¥ó¥Ý¡¼¥Í¥ó¥È¤Ï¡¢Â¾¥½¥Õ¥È¥¦¥§¥¢¤ÈÄÌ¿®¤¹¤ë¤¿¤á¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÍ­¤·¤Æ¤¤¤ë¡£¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¥½¥Õ¥È¥¦¥§¥¢¤Ï¡¢¸ø³«¤µ¤ì¤Æ¤¤¤ë¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò²ð¤·¤ÆCOM¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ÈÄÌ¿®¤ò¤·¡¢¤½¤ì¤é¤òÁȤ߹ç¤ï¤»¤ë¤³¤È¤Ç¥µ¡¼¥Ó¥¹¤òÄ󶡤¹¤ë¡£

COM¤ÎÁ°¿È¤ÏOLE¤Ç¤¢¤ë¡£COM¤Ï.NET Framework¤ËÃÖ¤­´¹¤¨¤é¤ì¤Æ¤æ¤¯¤â¤Î¤È¹Í¤¨¤é¤ì¤Æ¤ª¤ê¡¢¤Þ¤¿Windows

Communication Foundation (WCF) ¤òÄ̤¸¤ÆWeb¥µ¡¼¥Ó¥¹¤ò¥µ¥Ý¡¼¥È¤¹¤ë¡£

Activex

ActiveX¡Ê¥¢¥¯¥Æ¥£¥Ö¥¨¥Ã¥¯¥¹¡Ë¤È¤Ï¡¢¥Þ¥¤¥¯¥í¥½¥Õ¥È¤¬³«È¯¤¹¤ë¥¤¥ó¥¿¡¼¥Í¥Ã¥È¤Ë´Ø¤¹¤ë¥½¥Õ¥È¥¦¥§¥¢¥³¥ó¥Ý¡¼¥Í¥ó¥È¤ä¤½¤Îµ»½Ñ¤ò¼¨¤¹ÍѸì¤Ç¤¢¤ë¡£°ìÈÌŪ¤Ë¤ÏƱ¼ÒÀ½¤Î¥¦¥§¥Ö¥Ö¥é¥¦¥¶¤Ç¤¢¤ëInternet

Explorer¤ä¤½¤Î¥³¥ó¥Ý¡¼¥Í¥ó¥È¤òÍøÍѤ·¤¿¥½¥Õ¥È¥¦¥§¥¢¾å¤ÇưŪ¤Ê¥³¥ó¥Æ¥ó¥Ä¤òºÆÀ¸¤¹¤ë¤¿¤á¤Îµ»½Ñ¡ÊActiveX¥³¥ó¥È¥í¡¼¥ë¡Ë¤ò»Ø¤¹¡£

¸µ¡¹¤Ï¥Þ¥¤¥¯¥í¥½¥Õ¥È¤¬¥ª¥Ö¥¸¥§¥¯¥È¤Î¤ä¤ê¤È¤ê¤ò¹Ô¤¦»ÅÁȤߤǤ¢¤ëObject Linking and

Embedding(OLE)¤«¤é¥¤¥ó¥¿¡¼¥Í¥Ã¥È¤Ë´Ø¤¹¤ëµ»½Ñ¤òʬΥ¤µ¤»¤¿¤â¤Î¤¬ActiveX¤Ë¤¢¤¿¤ë¡£

JDBC

JDBC¤Ï¡¢Java¤È¥Ç¡¼¥¿¥Ù¡¼¥¹¤ÎÀܳ¤Î¤¿¤á¤ÎAPI¡£JDBC¤ÏÀµ¼°Ì¾¾Î¤Ç¤¢¤Ã¤ÆÎ¬¾Î¤Ç¤Ï¤Ê¤¤¤¬¡¢Java Database

Connectivity¤òά¤·¤ÆÌ¾ÉÕ¤±¤é¤ì¤¿¤È¹Í¤¨¤é¤ì¤Æ¤¤¤ë¡ÊJava Database

Connection¤Ç¤¢¤ë¤È¤¹¤ë»ñÎÁ¤â¤¢¤ë¡Ë¡£ODBC¤ò¥Ù¡¼¥¹¤Ë¥µ¥ó¡¦¥Þ¥¤¥¯¥í¥·¥¹¥Æ¥à¥º¤ª¤è¤ÓDataDirect¤¬¶¦Æ±¤Ç³«È¯¤·¤Æ¤¤¤ë¤È¸À¤ï¤ì¤Æ¤¤¤ë¡£¤½¤Î¤¿¤á¥É¥é¥¤¥Ð¤Î¥Ç¥Õ¥©¥ë¥È¤Î¼«Æ°¥³¥ß¥Ã¥È¤ÎÍ­¸ú²½¤Ê¤É»÷¤Æ¤¤¤ëÅÀ¤â¿¡¹¤¢¤ë¡£

DAO¡Ê¥×¥í¥°¥é¥ß¥ó¥°¤ÎÌäÂê¡Ë

Data Access Object¡ÊDAO¡Ë¤È¤Ï¡¢¤¢¤ë¼ï¤Î¥Ç¡¼¥¿¥Ù¡¼¥¹¤ä±Ê³À­µ¡¹½¤ÎÃê¾Ý²½¤µ¤ì¤¿¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤òÄ󶡤¹¤ë¥ª¥Ö¥¸¥§¥¯¥È¤Ç¤¢¤ê¡¢¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¾ÜºÙ¤ò³«¼¨¤¹¤ë¤³¤È¤Ê¤¯ÆÃÄê¤ÎÁàºî¤òÄ󶡤¹¤ë¡£

OleDbConnection¥ª¥Ö¥¸¥§¥¯¥È¤ÎºîÀ®

ή¤ìÀ°Íý

  • <DB´ØÏ¢>

DataList¥³¥ó¥È¥í¡¼¥ë¤Î¥Ç¡¼¥¿Ï¢·ë

  • ¥ª¥Ö¥¸¥§¥¯¥È¤Î½¸¹ç¤ËÂФ¹¤ëÈ¿Éü½èÍý¤ò¥µ¥Ý¡¼¥È¤¹¤ëIEnumerable¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹¤ò¼ÂÁõ¤·¤¿¥Ç¡¼¥¿¥½¡¼¥¹¤ò¼õ¤±¼è¤ê¡¢Á°²ó²òÀ⤷¤¿È¿ÉüÃͥǡ¼¥¿Ï¢·ë¤ò¹Ô¤¦¤È¤¤¤¦ÅÀ¤Ç¤Ï¡¢¥Ç¡¼¥¿¥ê¥¹¥È¡¦¥³¥ó¥È¥í¡¼¥ë¤È¡¢Âè8²ó¤Ç²òÀ⤷¤¿¥ê¥¹¥È·Ï¥³¥ó¥È¥í¡¼¥ë¤Ë°ã¤¤¤Ï¤Ê¤¤¡£¤·¤«¤·¥Ç¡¼¥¿¥ê¥¹¥È¡¦¥³¥ó¥È¥í¡¼¥ë¤Ç¤Ï¡¢¤½¤Î»ÒÍ×ÁǤ˥ǡ¼¥¿Ï¢·ë¼°¤òµ­½Ò¤·¤Æ¥Ç¡¼¥¿¥½¡¼¥¹¤ò»²¾È¤Ç¤­¤ë¤¿¤á¡¢¥Ç¡¼¥¿Ï¢·ë¤Î·ë²Ì¤ò¼«Í³¤Ë¥«¥¹¥¿¥Þ¥¤¥º¤Ç¤­¤ë¤È¤³¤í¤¬Â礭¤¯°Û¤Ê¤Ã¤Æ¤¤¤ë¡£

HTML¥³¥ó¥È¥í¡¼¥ë¤ÈWEB¥µ¡¼¥Ð¥³¥ó¥È¥í¡¼¥ë¤Î»È¤¤Ê¬¤±¡£

    • HTML¤¢¤ê¤­¤Çºî¤ë¾ì¹ç¤Ï¡¢HTML¥³¥ó¥È¥í¡¼¥ë¤Ç¡¢HTML¥¿¥°¤òASP²½¤¹¤ë¤È³Ú¡£
    • µ¡Ç½¤¢¤ê¤­¤Çºî¤Ã¤Æ¤¤¤¯¤È¡¢WEB¥µ¡¼¥Ð¥³¥ó¥È¥í¡¼¥ë¤¬¥á¥¤¥ó¤Ë¤Ê¤Ã¤Æ¤¤¤¯¡£

scaffold¤Èbake¤Î°ã¤¤

scafold

-³«È¯¼Ô¤¬¥ª¥Ö¥¸¥§¥¯¥È¤òÀ¸À®¡¦¼è¤ê½Ð¤·¡¦¹¹¿·¡¦ºï½ü¤¹¤ë¤³¤È¤¬¤Ç¤­¤ë´ðËÜŪ¤Ê¥¢¥×¥ê¥±¡¼¥·¥ç¥ó¤òÄêµÁ¤·ºîÀ®¤¹¤ë¤È¤¤¤¦µ»½Ñ¤Ç¤¹¡£$scaffold ÊÑ¿ô¤ò¥³¥ó¥È¥í¡¼¥éÆâ¤ËÀßÄꤹ¤ë¤È¡¢Æ°ºî¤·¤Þ¤¹¡£

- ¥½¡¼¥¹¤òºîÀ®¤¹¤ë¤â¤Î¤Ç¤Ï¤Ê¤¤¡£½ÀÆð¤ËÊѹ¹¡¦¥«¥¹¥¿¥Þ¥¤¥º¤¬É¬Íפʾì¹ç¤Ï¡¢bake¤Ç¼Â¥½¡¼¥¹¤òºî¤ë¤³¤È¤¬¹¥¤Þ¤·¤¤¡£

    • scaffold¤Î¼ÂÎã
   <?php
           class CategoriesController extends AppController {
               var $scaffold;  //scaffoldÊÑ¿ô¤ÎÀßÄê
       }
   ?>

bake

-ÂÐÏ÷Á¼°¤Ç¡¢¥³¥ó¥È¥í¡¼¥é¡¢¥â¥Ç¥ë¡¢¥Ó¥å¡¼¥Õ¥¡¥¤¥ë¤òºîÀ®¤¹¤ëµ¡Ç½¡£scafold¤È°ã¤¤¡¢¥½¡¼¥¹¤¬½ÐÍè¾å¤¬¤ë¤Î¤Ç¡¢¥«¥¹¥¿¥Þ¥¤¥º¤¬²Äǽ¡£

Perl¤Î¤¤¤í¤¤¤í

³°ÉôÀßÄê¥Õ¥¡¥¤¥ë¤ÎÆÉ¤ß¹þ¤ß

  • ÊÑ¿ôÄêµÁ½¸¤òÆÉ¤ß¹þ¤à¡£

require ("¥Õ¥¡¥¤¥ë¥Ñ¥¹");

  • Config::Simple¤ÎÍøÍÑ¡£(¥Æ¥­¥¹¥È¥Õ¥©¡¼¥Þ¥Ã¥È¤òÆÉ¤ß¹þ¤á¤ë¡£)

[»²¹Í]http://www.ksknet.net/perl/configsimple.html


ÆÃ¼ìÊÑ¿ô¤Î°ìÍ÷

[»²¹Í]http://www.ksknet.net/perl/perl_10.html

µ¤¤Ë¤Ê¤ë¤È¤³¤í¤òÎóµó¡£

¥Õ¥¡¥¤¥ë¥ê¥¹¥È¤Î¼èÆÀ

http://rfs.jp/sb/perl/11/081901html.html

¥³¥Þ¥ó¥É¥ê¥Õ¥¡¥ì¥ó¥¹

http://rfs.jp/sb/perl/05/01.html


¡Öor die¡×¤Î»È¤¤Êý¡£

  • die

¡Ödie¡×´Ø¿ô¤Ï¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¤Ë¥×¥í¥°¥é¥à¤ò½ªÎ»¤µ¤»¤ë¾ì¹ç¤Ë»ÈÍѤ·¡¢¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·Perl¥¹¥¯¥ê¥×¥È¤ò½ªÎ»¤·¤Þ¤¹¡£

1ÈÖÌܤΰú¿ô¤Ë¤Ï¥¨¥é¡¼¤È¤·¤Æ½ÐÎϤ¹¤ë¥ê¥¹¥È¤ò»ØÄꤷ¤Þ¤¹¡£¥¨¥é¡¼¤ò½ÐÎϸå¤ËÆÃ¼ìÊÑ¿ô¡Ö$!¡×¤Ë³ÊǼ¤µ¤ì¤Æ¤¤¤ë¥·¥¹¥Æ¥à¥¨¥é¡¼¤ÎÈÖ¹æ¤ò¥¹¥¿¡¼¥¿¥¹¥³¡¼¥É¤È¤·¤Æ

¡Öexit¡×´Ø¿ô¤ò¸Æ¤Ó½Ð¤·¤Æ½ªÎ»¤·¤Þ¤¹¡£

¢ª die¤ÏÊ̤˲¿¤òȽÄꤷ¤Æ¤¯¤ì¤ë¤ï¤±¤Ç¤â¤Ê¤¤¡£

  • or

¡Öor¡×±é»»»Ò¤Ïº¸Êդμ°¤ò¤Þ¤ºÉ¾²Á¤·¤Þ¤¹¡£º¸ÊÕ¤¬¿¿¤Î¾ì¹ç¤Ï±¦ÊÕ¤Ïɾ²Á¤»¤º¤Ë¼¡¤Î¹Ô¤Ø¿Ê¤ß¤Þ¤¹¤¬¡¢º¸ÊÕ¤¬µ¶¤Î¾ì¹ç¤Ï±¦ÊÕ¤òɾ²Á¤·¤Þ¤¹¡£

perl ¤Çfalse¤È²ò¼á¤µ¤ì¤ëÃͤ¬º¸ÊÕ¤«¤éÅϤµ¤ì¤¿¤é¡¢±¦ÊÕ¤ò¼Â¹Ô¤¹¤ë¡£

perl¤Çfalse¤È¤Ê¤ë¤Î¤Ï²¼µ­¡£

 0      ¿ôÃÍ0
()      ¶õ¥ê¥¹¥È
'0'     ʸ»úÎó0
''      ¶õʸ»ú
undef   undef

¢ª¤Ê¤Î¤Ç¡¢perl ¡Öor die¡×¤¬»È¤¨¤ë¤Î¤Ï¡¢¤¢¤¯¤Þ¤Ç¾åµ­¤ÎÃͤ¬µ¢¤Ã¤Æ¤­¤¿¤È¤­¤Ë¡¢¼ºÇÔ¤·¤¿¤ÈȽÄê¤Ç¤­¤ë¾ì¹ç¤Î¤ß¡£

[»²¹Í]

# ¥Õ¥¡¥¤¥ë¥ª¡¼¥×¥ó»þ¥¨¥é¡¼¤È¤Ê¤Ã¤¿¤é¡¢½ªÎ»¡£
open(DATAFILE, "data.txt") or die("error :$!");


PHP¤ÎÆüÉÕ·×»»

[ÆüÉÕÈæ³Ó]

http://ameblo.jp/hyperdev/entry-10413291219.html

[1»þ´Ö¡¢1Æü¡¢°ì·î¡¢1ǯ·×»»] ¢ª»þ´Ö¥ì¥Ù¥ë¤Ç·«¤ê¾å¤²¤¹¤ë¡£

http://www.geocities.jp/web9star/php_basic/date_2.html

¥¿¥¤¥à¥¾¡¼¥ó¤ò»ØÄê

perl ¥³¡¼¥Ç¥£¥ó¥°¥ë¡¼¥ë


¥³¡¼¥Ç¥£¥ó¥°¥ë¡¼¥ë

[»²¹Í] http://rfs.jp/sb/perl/09/05.html

ɽµ­
  • ´ðËÜ(¤É¤³¤Ç¤âƱ¤¸)
    • if ¤Ê¤É¤ÎÀ©¸æÊ¸¤ä¥Ö¥í¥Ã¥¯¤Ï¡¢¤½¤ÎËÜʸ¤ò¥¤¥ó¥Ç¥ó¥È¤¹¤ë
    • Ãæ¥«¥Ã¥³¡Ê { ¡Ë¤Ï¾ò·ï¼°¤ÈƱ¤¸¹Ô¤Ë¤¹¤ë
    • ¾ò·ï¼°¤Îξü¤Ë¥¹¥Ú¡¼¥¹¤òÆþ¤ì¤ë
    • ¥»¥ß¥³¥í¥ó¤ÎÁ°¤Ë¤Ï¥¹¥Ú¡¼¥¹¤òÆþ¤ì¤Ê¤¤
  • 1¹Ôʸ¤Î½ñ¤­Êý
    • 1 ¹Ô¤ÇºÑ¤à¥Ö¥í¥Ã¥¯¤Ï1¹Ô¤Ç½ñ¤¯
    • û¤¤1 ¹Ô¤Î¥Ö¥í¥Ã¥¯¤Ç¤Ï¡¢¥»¥ß¥³¥í¥ó¤ò¾Ê¤¯?
  • ¼°¤Î½ñ¤­Êý
    • ±é»»»Ò¤Îξü¤Ë¥¹¥Ú¡¼¥¹¤òÆþ¤ì¤ë
    • ¥«¥ó¥Þ¤Î¸å¤Ë¥¹¥Ú¡¼¥¹¤òÆþ¤ì¤ë
    • Âбþ¤¹¤ë¹àÌܤϡ¢¥«¥é¥à¤ò·¤¨¤Æ½Ä¤ËÀ°Î󤹤ë
  • ÆÉ¤ß¤ä¤¹¤¤½ñ¤­Êý
    • ưºîÆâÍÆ¤Î°Û¤Ê¤ë½èÍý¤´¤È¤Ë¶õ¹Ô¤òÆþ¤ì¤ë
    • else ¤Ï if/unless ¤ÎÊĤ¸Ã楫¥Ã¥³¡Ê { ¡Ë¤ÈƱ¤¸¹Ô¤Ë¤¹¤ë
    • Ť¤¹Ô¤Ï¿ô¹Ô¤Ëʬ¤±¤ë (ÉáÄ̤γ«¶È¤ÇOK)
  • ÊÑ¿ô¤ÎÀë¸À
    • ÊÑ¿ô¤ÎÀë¸À¤Ï¤Ê¤ë¤Ù¤¯¥µ¥Ö¥ë¡¼¥Á¥ó¤ÎÀèÆ¬¤ËÃÖ¤¯
    • ÊÑ¿ô¤ÎÀë¸À¤È¼¡¤Î¼Â¹Ô½èÍý¤Î´Ö¤Ë¶õ¹Ô¤òÃÖ¤¯
¥³¡¼¥Ç¥£¥ó¥°ºîË¡
  • Perl¤Ë·Ù¹ð¤·¤Æ¤â¤é¤¦
    • ¾ï¤Ë¥×¥í¥°¥é¥à¤ò-w¥Õ¥é¥°¤ò»ØÄꤷ¤Æ¼Â¹Ô¤·¤Þ¤·¤ç¤¦¡£
    • use strict;Àë¸À¤ò¤¹¤ë¡£
  • Ʊ¤¸¤â¤Î¤ò²þ¤á¤Æºî¤é¤Ê¤¤¡£
  • ¥³¥á¥ó¥È¤ÏŬÀÚ¤Ë
    • ¥Ý¥¤¥ó¥È¤Ï­¡¥×¥í¥°¥é¥à¤ÎÀèÆ¬ ­¢¥µ¥Ö¥ë¡¼¥Á¥ó¤ÎÁ° ­£Ê£»¨¤Ê½èÍý¤ÎÁ°
  • ½ñ¤­Êý¤Î´ð½à¤Ï¡ÖÆÉ¤ß¤ä¤¹¤µ¡×
  • ¥¢¥ó¥Éʸ ¤Ï&&¤è¤ê¤â¡¢and¤Ç¡£
  • Ϣ³¤·¤¿printʸ¤¬¤¢¤ë¾ì¹ç¤Ï¡¢¥Ò¥¢¥É¥­¥å¥á¥ó¥È¤ò»È¤¦¡£
  • ¥¯¥©¡¼¥È¤ò´Þ¤àʸ»úÎó¤ËÂФ·¤Æ¤Ïq//¤ò»È¤¦¡£(°Ï¤¤Ê¸»ú¤Ï¿§¡¹¤¢¤ë¡£)
    • ¡Öq//¡× ¡Öq{}¡× ¥·¥ó¥°¥ë¥¯¥©¡¼¥Æ¡¼¥·¥ç¥ó
    • ¡Öqq//¡×¡Öqq{}¡× ¥À¥Ö¥ë¥¯¥©¡¼¥Æ¡¼¥·¥ç¥ó
    • ¡Öqx//¡×¡Öqx{}¡× ¥Ð¥Ã¥¯¥¯¥©¡¼¥Æ¡¼¥·¥ç¥ó

  • °Ü¿¢À­¤ò¹â¤á¤ë
    • ¤¹¤Ù¤Æ¤Î¥Þ¥·¥ó¤ÇÍøÍѤǤ­¤Ê¤¤µ¡Ç½¤ò»È¤¦¾ì¹ç¤Ë¤Ï¡¢eval ¤ÎÃæ¤Ç»È¤Ã¤¿¤Û¤¦¤¬°ÂÁ´¤Ç¤¹¡£
    • eval
perl ¤¬¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤ò½Ð¤·¤Æ½ªÎ»¤¹¤ë¤è¤¦¤ÊÌ¿Îá¤ä¡¢
die ¤¬¼Â¹Ô¤µ¤ì¤¿¾ì¹ç¡¢undefine ¤òÊÖ¤·¡¢$@¤Ë¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤ò³ÊǼ¤¹¤ë¡£

-

¥Á¥§¥Ã¥¯¥Ä¡¼¥ë

http://beech-tree.jpn.org/loran/soft/plcheck.html

¾ðÊ󥻥­¥å¥ê¥Æ¥£¤Ë¤Ä¤¤¤Æ¤Á¤ç¤Ã¤È¤Þ¤È¤á

Çİ®¤·¤¿¤¤¤³¤È

(1)¾ðÊ󥻥­¥å¥ê¥Æ¥£²¿¤ò»Ø¤·¤Æ¤¤¤Ã¤Æ¤¤¤ë¤Î¤«¡¢
    • ¡Ö¾ðÊó¤Îµ¡Ì©À­¡¦´°Á´À­¡¦²ÄÍÑÀ­¡×¤ò³ÎÊݤ¹¤ë¤³¤È¡£
    • 郎·è¤á¤¿¤Î¤«¢ªISO/IEC(JIS Q)¤È¤¤¤¦É¸½à²½ÁÈ¿¥¤Ë¤è¤ëÄêµÁ 27002
    • ¾åµ­¤Ë²Ã¤¨4¤Ä¤¬Äɲäµ¤ì¤Æ¤¤¤ë¡£(JIS¾å¤Ï´Þ¤á¤Æ¤â¤è¤¤¤È¤¤¤¦¥ì¥Ù¥ë)
(2)¤É¤ó¤ÊʬÎब¤¢¤ë¤Î¤«
  • ­¡µ¡Ì©À­¤Î¶¼°Ò¤ÈÂбþ
  • ­¢´°Á´À­¤Î¶¼°Ò¤ÈÂбþ
  • ­£²ÄÍÑÀ½¤Î¶¼°Ò¤ÈÂбþ
  • ­¤ ¿¿ÀµÀ­
  • ­¥ ÀÕǤÄÉÀ×À­
  • ­¦ ÈÝǧËÉ»ß
  • ­§ ¿®ÍêÀ­

¤¬Á´Ê¬Îà¤È¤Ê¤ë¡£

(1)¾ðÊ󥻥­¥å¥ê¥Æ¥£¤È¤Ï(Á´ÂοÞ)

¾ðÊ󥻥­¥å¥ê¥Æ¥£¤È¤Ï
  • ¡Ö¾ðÊó¤Îµ¡Ì©À­¡×
  • ¡Ö¾ðÊó¤Î´°Á´À­¡×
  • ¡Ö¾ðÊó¤Î²ÄÍÑÀ­¡×
  • ¤ò°Ý»ý¤¹¤ë¤³¤È¤È¡¢ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¡£(JIS Q 27002¡Ê¤¹¤Ê¤ï¤ÁISO/IEC 27002¡Ë¤è¤êÄêµÁ)
µ¡Ì©À­¤È¤Ï
  • confidentially (Æâ¡¹(¤Ë), ¤Ê¤¤¤·¤ç¤Ç.) ·ÁÍÆ»ì(µ¡Ì©¤Î¡¤Æâ¡¹¤Î.)
  • ¾ðÊó¤Ø¤Î¥¢¥¯¥»¥¹¤òǧ¤á¤é¤ì¤¿¤â¤Î¤À¤±¤¬¡¢¤½¤Î¾ðÊó¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤ë¾õÂÖ¤ò³ÎÊݤ¹¤ë¤³¤È¡£
´°Á´À­¤È¤Ï
  • integrity (´°Á´¤Ê¾õÂÖ¡¤Ìµ½ý.)
  • ¾ðÊó¤¬Ç˲õ¡¦²þ¤¶¤ó¤Þ¤¿¤Ï¾Ãµî¤µ¤ì¤Æ¤¤¤Ê¤¤¾õÂÖ¤ò³ÎÊݤ¹¤ë¤³¤È¡£
²ÄÍÑÀ­¤È¤Ï
  • availability (ÍøÍѤǤ­¤ë)
  • ¾ðÊó¤Ø¤Î¥¢¥¯¥»¥¹¤òǧ¤á¤é¤ì¤¿¤â¤Î¤¬¡¢É¬Í×»ú¤ËÃæÃǤ¹¤ë¤³¤È¤Ê¤¯¡¢¾ðÊ󤪤è¤Ó´ØÏ¢»ñ»º¤Ë¥¢¥¯¥»¥¹¤Ç¤­¤ë¾õÂÖ¤ò³ÎÊݤ¹¤ë¤³¤È¡£

»°¤Ä¤ÎƬʸ»ú¤Ç¡¢£Ã£É£Á¡ª¡ª¡ª¡ª¡ª

  • 1996 2006¤ËÄêµÁ¤¬4¤ÄÄɲäµ¤ì¤Æ¤¤¤Þ¤¹¡£
    • ISO¤Ç¤Ï´Þ¤á¤Æ¤¤¤ë¤¬¡¢JIS Q¤Ç¤Ï´Þ¤á¤Æ¤â¤è¤¤¥ì¥Ù¥ë¤ÎÄêµÁ¡£

¿¿ÀµÀ­ (authenticity)

  • ¤¢¤ë¼çÂΤޤ¿¤Ï»ñ¸»¤¬¼çÄ¥¤É¤ª¤ê¤Ç¤¢¤ë¤³¤È¤ò³Î¼Â¤Ë¤¹¤ëÆÃÀ­¡£

ÀÕǤÄÉÀ×À­ (accountability

  • ¤¢¤ë¥¨¥ó¥Æ¥£¥Æ¥£¤Îưºî¤¬¤½¤Îưºî¤«¤é¤Îưºî¼ç¤Î¥¨¥ó¥Æ¥£¥Æ¥£¤Þ¤Ç°ÌÃÖ¤ËÄÉÀפǤ­¤ë¤³¤È¤ò³Î¼Â¤Ë¤¹¤ë¡£

ÈÝǧËÉ»ß (non-repudiation)

  • ¤¢¤ë³èư¤Þ¤¿¤Ï»ö¾Ý¤¬¤ª¤­¤¿¤³¤È¤ò¸å¤Ë¤Ê¤Ã¤ÆÈÝǧ¤µ¤ì¤Ê¤¤¤è¤¦¤Ë¾ÚÌÀ¤¹¤ëǽÎÏ

¿®ÍêÀ­ (reliability)

  • °Õ¿Þ¤·Æ°ºî¤ª¤è¤Ó¡¢·ë²Ì¤Ë°ìÃפ¹¤ëÆÃÀ­¡£

´ØÏ¢ÍѸì

¥ê¥¹¥¯ (»¼ºÈ¯À¸¤Î²ÄǽÀ­ ¤Þ¤¿¤Ï¡¢)
  • ²¿¤«¤·¤é¤Î»¼º¤òȯÀ¸¤µ¤»¤ë»öÂÖ¤ä¾õ¶·¤Ø¤Î²ÄǽÀ­¡£
  • == (¥ê¥¹¥¯¥Õ¥¡¥¯¥¿¡¼(¸½¾Ý) ȯÀ¸ÉÑÅ٠ȯÀ¸³ÎΨ ) = ¥ê¥¹¥¯
  • ¤Þ¤¿¡¢¹Í¤¨¤é¤ì¤ë¶¼°Ò¤òʬÀϤ·¤¿·ë²Ì¤È¤·¤ÆÇ§¼±¤µ¤ì¤ë»¼ºÈ¯À¸¤Î²ÄǽÀ­(¥ê¥¹¥¯°ø»Ò)¤ò¤µ¤¹¤³¤È¤â¤¢¤ë¡£

ÀȼåÀ­
  • ¥ê¥¹¥¯¤òȯÀ¸¤µ¤»¤ë¸¶°ø = ¥ê¥¹¥¯¥Õ¥¡¥¯¥¿¡¼
¶¼°Ò
  • ÀȼåÀ­¤òÍøÍѤ·¤Æ¡¢¥ê¥¹¥¯¤ò¸½¼Â²½¤µ¤»¤ë¼êÃÊ¡£
    • = ÀȼåÀ­ + ¶¼°Ò = ¥ê¥¹¥¯
    • * ¼«Á³ºÒ³²¤â´Þ¤Þ¤ì¤ë¡£
¥¤¥ó¥·¥Ç¥ó¥È
  • ȯÀ¸¤¹¤ë²ÄǽÀ­¤Î¹â¤¤¶¼°Ò(ÀȼåÀ­¤òÍøÍѤ·¡¢¥ê¥¹¥¯¤ò¸²¸½¤·¤è¤¦¤È¤¹¤ë¤â¤Î¡£)
  • ¾ðÊó´ÉÍý¤ä¥·¥¹¥Æ¥à±¿ÍѤ˴ؤ·¤ÆÊݰ¾å¤Î¶¼°Ò¤È¤Ê¤ë¸½¾Ý¤ä»ö°Æ(¥»¥­¥å¥ê¥Æ¥£¥¤¥ó¥·¥Ç¥ó¥È)¤Î¤³¤È¤ò»Ø¤¹¾ì¹ç¤¬Â¿¤¤
Âй³ºö
  • ¶¼°Ò¤¬¥ê¥¹¥¯¤ò¸½¼Â²½¤¹¤ë¤³¤È¤òËɻߤ¹¤ë¼êÃÊ¡£

JIS Q 27002 = (ISO/IEC 27002)¤È¤Ï
  • ISO/IEC 27002¤È¤ÏISO(·å¤Ï4-5)
ISO¤È¤Ï
  • ¹ñºÝɸ½à²½µ¡¹½
  • Åŵ¤Ê¬Ìî¤ò½ü¤¯¹©¶ÈʬÌî¤Î¹ñºÝɸ½àµ¬³Ê¤òÄê¤á¤ëÁÈ¿¥
IEC¤È¤Ï
  • ¹ñºÝÅŵ¤É¸½à²ñµÄ
  • Åŵ¤¹©³Ø¡¢ÅŻҹ©³Ø¤Î´ØÏ¢µ»½Ñ¤Î¹ñºÝŪɸ½à´ë²è¤òÄê¤á¤ëÁÈ¿¥¡£(ISO¤ÏÅŵ¤´ØÏ¢°Ê³°¡¢IEC¤ÏÅŵ¤´ØÏ¢)
JIS Q
JIS¤ÈISO/IEC¤Î´ØÏ¢
  • JIS¦¤ÇISO//IEC¤Ë¤¢¤ï¤»¤¿µ¬³Ê¤òÄêµÁ¤¹¤ë¤³¤È¤â¤¢¤ë¡£¤Ê¤Î¤Ç¡¢ISO/IEC 27002 = JIS Q 27002

³«È¯¥â¥Ç¥ë¤Î¼ïÎà - ¥¹¥Ñ¥¤¥é¥ë¥â¥Ç¥ë¡¢¥×¥í¥È¥¿¥¤¥×¥â¥Ç¥ë¡¢¥¢¥¸¥ã¥¤¥ë ¤Î°ã¤¤ -

¥¹¥Ñ¥¤¥é¥ë¥â¥Ç¥ë¡£

  • 1²ó¤ËÁ´¤Æ¤òºî¤é¤Ê¤¤¡£Àß·×-³«È¯¤òʬ³ä¤·¤ÆÊ£¿ôñ°Ì¤Ëʬ³ä¤·¡¢Ê¬³äñ°Ì¤Ç¡¢¥Á¥§¥Ã¥¯¾µÇ§¥Õ¥§¥¤¥º¤òƳÆþ¤¹¤ë¡£

¥×¥í¥È¥¿¥¤¥×¥â¥Ç¥ë

  • ¤Ä¤É¤Ä¤É»îºîÉʤòºî¤ê¡¢Ç§¼±¤¢¤ï¤»¤ò¤·¤Æ¤¤¤¯¼êË¡¡£

¥¢¥¸¥ã¥¤¥ë

  • Á᤯ºî¤ë¤¿¤á¤Î³«È¯¥â¥Ç¥ë¤ÎÁí¾Î¡£µ¡Ç½¼ÂÁõ¢ª¥ê¥ê¡¼¥¹¤ò¥Õ¥§¥¤¥º¤ï¤±¤·¤Æ¡¢¤Ä¤É¥ê¥ê¡¼¥¹¤Þ¤Ç¼Â»Ü¤¹¤ë¡£

¤Þ¤È¤á

¡¦¥¹¥Ñ¥¤¥é¥ë¤È¥¢¥¸¥ã¥¤¥ë¤Ï³«È¯¥×¥í¥»¥¹¤ÎÏá£
¡¦¥×¥í¥È¥¿¥¤¥×¤Ï¡¢³«È¯¥×¥í¥»¥¹¤Î¥æ¡¼¥¶¾µÇ§¤Î¤È¤êÊý¤ÎÏᣥ¦¥©¡¼¥¿¡¼¥Õ¥í¡¼¥â¥Ç¥ë¤Ê¤é¥É¥­¥å¥á¥ó¥È¤Çǧ¼±¹ç¤ï¤»¤¹¤ë¤È¤³¤í¡¢»îºîÉʤòºî¤Ã¤ÆÇ§¼±¹ç¤ï¤»¤·¤Æ¡¢¤½¤ì¤«¤éËÜÈÖÍѤΤâ¤Î¤òºî¤ë¡£
¡¦¥¹¥Ñ¥¤¥é¥ë + ¥×¥í¥È¥¿¥¤¥× ¤È¤¤¤¦¤Î¤âÍ­¤êÆÀ¤ë¡£
¡¦¥¢¥¸¥ã¥¤¥ë¤Ï»×ÁÛŪ¤Ë¡¢¥×¥í¥È¥¿¥¤¥×¤òºî¤ë¤°¤é¤¤¤Ê¤é¡¢ËÜÈÖÍѤΤâ¤Î¤òºî¤ì¤È¤¤¤¦¤³¤È¡£