2017.07.15 HANATANI Takuma a.k.a. potato4d #phpkansai

PHPã®coredumpãèªã¿ãããã¨ã¯ä¸çã«1度ããããããããããªãããªãã»ããããã æ£ç¢ºã«ã¯mod_phpãçµã¿è¾¼ã¾ãã¦ããApache httpdã®coredumpã§ããã å 容ã¯ããããã³ãã³ããç¥ããã人åã $ gdb /usr/sbin/apache2 --core /var/tmp/core/core.15001 --command /usr/local/src/php-5.5.5/.gdbinit (gdb) set print pretty on (gdb) zbacktrace (gdb) print *executor_globals->active_op_array (gdb) print sapi_globals->request_info
PHPä¸è¬ã«é¢ããã¢ããã³ãã«ã¬ã³ãã¼ã«ãªãã°ã¨æãã¾ããã¨ã¯ãããã¬ã¼ã ã¯ã¼ã¯ã®è©±é¡ãªã©ãããã ã¨æãã¾ãã®ã§ç¶æ³ã«å¿ãã¦ç´°ååããã¦è¡ãã°ãããã¨æãã¾ãã é¢é£ PHPStorm Advent Calendar 2013 http://qiita.com/advent-calendar/2013/phpstorm
ãã®ã¨ã³ããªã§ã¯PHPã®çµã¿è¾¼ã¿é¢æ°ã§ã¨ã©ã¼æã«ä¾å¤ãçºçãããæ¹æ³ãç´¹ä»ãã¾ããããã©ã«ãç¶æ ã§ã¯ãPHPã®çµã¿è¾¼ã¿é¢æ°ã®å¤§åã¯ã¨ã©ã¼æã«ä¾å¤ãçºçããã¾ããã åã®ã¨ã³ããªã§ãPHPã®headeré¢æ°ã¯æ»ãå¤ãè¿ãããã¨ã©ã¼æã«ä¾å¤ãçºçãããªããã¨ãç´¹ä»ãã¾ãããããã¯é ·ãä»æ§ã ã¨æãã®ã§ãããã©ãããã°ã¨ã©ã¼ãã³ããªã³ã°ã§ããããèãã¦ã¿ã¾ããã headeré¢æ°ã®å ´åãã¨ã©ã¼ï¼è¦åï¼ãã®ãã®ã¯åºã¦ããã®ã§ã以ä¸ã®äºã¤ã®æ¹æ³ãåè£ã¨ãã¦èãããã¾ãã error_get_lasté¢æ°ã§ç´è¿ã®ã¨ã©ã¼ãåå¾ãã¦ã¨ã©ã¼å¦çãã set_error_handlerã§å®ç¾©ããã¨ã©ã¼ãã³ãã©é¢æ°ã§ã¨ã©ã¼å¦çãã ã©ã¡ããã¢ãã³ãªæ¸ãæ¹ã¨ã¯ã»ã©é ãæãã§ãã åè ã¯ãBASICã®on error resume nextãé£æ³ããã¾ãããç´è¿ã®ã¨ã©ã¼ãã©ã®ç®æã§èµ·ãã£ããã¯ç°¡åã«ã¯èå¥ã§ããªãã®ã§
phpcaã¯PHPãéçã«è§£æãã¦å°ããªãã¹ãã³ã¼ãã®ä¿®æ£ç¹ãææãã¦ãããã½ããã¦ã§ã¢ã§ãã PHPãæ¸ãéã«ã©ãæ¸ãã°å°ããªãã¹ã«ãããã°ã®çºçãé²ããã§ãããããä¸å®ã®åºæºã«æ²¿ã£ã¦è¨è¿°ãããã¨ã§æ´ç¶ã¨ããã³ã¼ããå®ç¾ããå¯èªæ§ãããããã¨ã§ãã°ã®æ··å ¥ãé²ããã¨ãã§ãã¾ããããã§ä½¿ãããã®ãphpcaã§ããéçã«PHPãã¡ã¤ã«ï¼ãã£ã¬ã¯ããªåä½ãå¯ï¼ã解æããä¿®æ£ãã¹ãå ´æãææãã¦ããã¾ãã 解æå¦çãå®è¡ãã¦ãã¾ããPHPã®ãã¹ã¨ã解æããããã¡ã¤ã«ããã£ã¬ã¯ããªåãæå®ãã¦å®è¡ãã¾ãã解æå¦çä¸ã¯éæã¡ãã»ã¼ã¸ãåºåããã¾ãã ã¡ãã»ã¼ã¸ä¾ã§ããã¿ãã®å©ç¨ãè¡ã®ä½¿ãæ¹ã«é¢ãã¦ãªã©ã¡ãã»ã¼ã¸ã表示ããã¾ãã ?>ããªãå ´åãã¡ãã»ã¼ã¸ãåºã¾ããããã¯PHPã®æ¸ãæ¹ã¨ãã¦ã¯éããç¥ãã¾ããï¼ç¢ºããªãæ¹ãè¯ãã¨ãã話ãªã®ã§ï¼ã PHPãæ¸ãä¸ã§ãããã¡ãªãã¹ããã°ã«ã¤ãªãããããªææã
PHPã®JITã³ã³ãã¤ã©ãHipHop Virtual MachineããFacebookããªã¼ãã³ã½ã¼ã¹ã§å ¬é HipHop Virtual Machineã¯ãPHPãé«éã«å®è¡ããããã«PHPã®ã³ã¼ããC/C++ã«å¤æãã¦g++ã§ã³ã³ãã¤ã«ãããã¤ããªã³ã¼ãã«ããHiphop compilerï¼hphpcï¼ã¨ãPHPã®ã¤ã³ã¿ããªã¿ã§ããHipHop interpreter (hphpi)ãçµã¿åããããã®ãPHPã®ã³ã¼ãããã¤ãããã¯ã«ãã¤ããªã³ã¼ãã¸ã¨å¤æãããã¨ã§ãé«éãªå®è¡ãç®æãã¦ãã¾ãã ã³ã³ãã¤ã©ã¨åç以ä¸ã®å®è¡é度㸠HipHopã¯Facebookãéçºãããªã¼ãã³ã½ã¼ã¹ã¨ãã¦å ¬éãã¦ãã¾ããä»åã®HipHop Virtual Machineãããããã®éçºã®å»¶é·ç·ä¸ã«ãããã®ã§ãã Our experiences with hphpc led us to start e
PHPã«ã³ãã¡ã¬ã³ã¹2011 ã§"PHPã¨ãã¹ãã¨CIã¨ç§ãæããããªãã®ããã"ã¨ããã¿ã¤ãã«ã§çºè¡¨ãã¦ãã¾ããã å½æ¥ã¯ãã»ã¨ãã©å¯ããååä¸ã¯ #nekkonã¨ããçµå©å¼ã«åå ãã¦ããã®çºè¡¨ã ã£ãããè¾ãã£ããå®è³ªå¯ã¦ãã¼ããã¤ãã¼ãçºè¡¨ã¤ãã¼ã å 容ã¨ãã¦ã¯æ¶ç©ºã®æã·ã¹ãã ã®è£æ¹ã«å ¥ã£ãã æ¶ç©ºã®äººããããã«ã¬ã¬ã·ã¼ã³ã¼ãã¨æ¦ããTDDãCIãé©ç¨ãã¦ãã£ããã ã¾ããé©ç¨ããã«ãããã©ããã便å©ãªãã¼ã«ã使ã£ããã ã¾ãããã¼ã ã«ãããã®æåã浸éãããããã«ã©ããããã ãªã©ã¨ãã£ãå 容ã¨ãªã£ã¦ãã¾ãã 以ä¸ããã¬ã¼ã³ã®ã¹ã©ã¤ãã Slideshareã«ä¸ãããã¤ã§ãããã¨USTã®é²ç»ãããã¾ããã http://www.ustream.tv/recorded/17177077 PHPã«ã³ãã¡ã¬ã³ã¹2011 PHPã¨ãã¹ãã¨CIã¨ç§ãæããããªãã®ãããView more pr
9æ10æ¥ã大ç°åºç£æ¥ãã©ã¶PiOã«ã¦ãPHPã«ã³ãã¡ã¬ã³ã¹2011ããéå¬ããã¾ããæ¬ç¨¿ã§ã¯ãæ¬ã¤ãã³ãã®åã»ãã·ã§ã³ã®æ¨¡æ§ãéææ´æ°ã®å½¢å¼ã§ã¬ãã¼ããã¦ããã¾ãã ä¼å ´è¨å¶ã大åçµãããåå è ã®çãããå¾ ã£ã¦ããã¡ã¤ã³ãã©ãã¯ã®ãã¼ã«ã§ãã ä»å¹´ã®ã¹ã¿ããTã·ã£ãã§ãã ä¼å ´ã«æ¥ãããªãæ¹ã®ããã«ããã¹ãã¨ãã©ã¼ãã§Ustreamã«ããä¸ç¶ãè¡ããã¦ãã¾ããåãã©ãã¯ã®ãã£ã³ãã«ã¯ä»¥ä¸ã®ã¨ããã§ãã ã¡ã¤ã³ãã©ã㯠ã®ã¼ã¯ãã©ã㯠ããã¯ãã©ã㯠廣å·é¡ãããåºèª¿è¬æ¼ã PHPã«ã³ãã¡ã¬ã³ã¹2011ã¯ãPHPã¦ã¼ã¶ã¼ä¼ã®å»£å·é¡ããã«ããåºèª¿è¬æ¼ã§å¹ãéãã¾ããã ã¾ãã¯ãPHPã®æ©ã¿ãã¨ãã¦ãPHPããã¬ã¤ã¯ãããã£ããã¨ãªã£ããã¼ã¸ã§ã³4ããç¾å¨ã®5.3ã«ã¤ãã¦ã®ãããããããã¦æ¬¡æãã¼ã¸ã§ã³ã®5.4ã«ã¤ãã¦ã®è§£èª¬ãç¶ãã¾ããPHP 5.4ã§ã¯ã10ï½15%ã®ããã©ã¼ãã³ã¹æ¹åãã³ã¼
KOYAMA Tetsuji (ããã»ã) @koyhoge PEAR ã®ãã°ãçºè¦ãããããã¬ãã¼ããããã¨ããããã¨ã£ãã®æã«åããã°ã¬ãã¼ããä¸ãã£ã¦ãããããã2å¹´éæ¾ç½®ããã¦ããã #PHPãããã
PFISã¯ãPHPé¢æ°ã®ã¤ã³ã¯ãªã¡ã³ã¿ã«ãµã¼ãã·ã¹ãã ã§ãã
ã¯ããã« ãã®è³æã¯ãPHPã§TDD&CIã¯ã¼ã¯ã·ã§ããã http://atnd.org/events/16626 㧠@yamashiro ãçºè¡¨ããããã®è³æã ãã ã¯ã¼ã¯ã·ã§ããåå è ãããªãã¦ãè¨äºèªãã ãã§å®çµããããã«ã¯æ¸ãã¦ãããã æ¦è¦ã¨ãã¦ã¯ãJenkins ã使ã£ã¦ PHP ã®ã¦ã³ã³ã¬ã¬ã·ã¼ãªã³ã¼ããããã«ç¶ºéºã«ãã¦è¡ããã¨ãããã¨ã説æããã èªç»èªè³ã ãã© PHPMD ã¨ã PHPCPD ã®ä½¿ãæ¹ã®èª¬æã®è³æã¨ãã¦ãããããã¤ã±ã¦ãè³æã«ãªã£ã¦ãã¨æãã¾ãããã¾ãã ãã®è¨äºã«æ¸ããã¦ããã¨ã¯ãå²ã¨Template for Jenkins Jobs for PHP Projectsã¨ãã¶ã£ã¦ããã©ããã©ã°ã¤ã³ãçµã£ã¦ããã®ã¨ãä¸åä¸åã®ãã©ã°ã¤ã³ã«ã¤ãã¦è§£èª¬ãã¾ãå®éã«ã¨ã©ã¼ãèµ·ããã¨ãã«ã©ãããã°ããã®ãæ¸ããã Java 㨠Jenkins ã®ã¤ã³ã¹ãã¼ã«ã¨J
課é¡â configure 㧠gif, png åããããªãå ´åã®è¦åãåããæããã å®å®å (php binding ã®è¦ç´ãå«ã) é«éå (ã¯ããããå¦çããããã) ã³ã¼ãæ´ç (åé·ã«ãªã£ã¦ã) â 確èªäºå®â getPNGData ã¡ã½ããã§éæ度ä»ãPNG ã®åä½ãæªç¢ºèªãtRNS ã¯å¯¾å¿æ¸ã¿ã ã RGBA å½¢å¼ã®å¦çã¯æªç¢ºèªã replaceJPEGData 㧠alpha ãã¼ã¿ãæå®ããæã®æåãããããã(JPEG 㯠premultiplied ããã¦ãªãã¨ãã¡ãã) getPNGData ã§æ½åºããç»åã®ã¬ã³ãå¤ãé«ãããã«è¦ããã(ãªãªã¸ãã«ããç½ã£ã½ã) â
æ¥ã¨ãããã¨ã§ãAmazon Web Servicesï¼AWSï¼ãã¯ããã¦ã¿ã¾ãããã AWSçãä¸ãã£ã¦ãã¾ããã2011å¹´3æã«æ±äº¬ãªã¼ã¸ã§ã³ãã§ãããã¨ã§ããããã触ã£ã¦ã¿ããããªã¨ããPHPã¦ã¼ã¶ã®æ¹ãå¤ããã¨æãã¾ãã ãããªããªãã¸ãAWSãã¯ãããéã«å½¹ç«ã¤æ å ±ããç´¹ä»ã§ãã 1. AWSã¢ã«ã¦ã³ããæ°è¦ä½æãã¦ãEC2ã®å©ç¨ç³ãè¾¼ã¿ãè¡ã ã¾ãAWSã®ã¢ã«ã¦ã³ããä½æãã¦ãEC2ã®å©ç¨ç³ãè¾¼ã¿ãè¡ãã¾ãã æé ã«ã¤ãã¦ã¯ãAWSã¨ãã³ã¸ã§ãªã¹ãã® @KenTamagawa ãããæ¸ããã以ä¸ã®è³æãåèã«ãªãã¾ãããã®ã¨ããã«é²ãã¦ããã°ãããããåé¡ç¡ãã¨æãã¾ãã é²ããä¸ã§èªåãè©°ã¾ã£ãç¹ã¯ä»¥ä¸ã éµä¾¿çªå·ãé»è©±çªå·ã«ã¯ãã¤ãã³ã éµä¾¿çªå·ãé»è©±çªå·ã¯ãã¤ãã³ãå¿ è¦ãªã®ã§å ¥åããããã«ãã¦ä¸ããã æ¸å¼ã¯æ¥æ¬å½å ã®ãã®ãéµä¾¿çªå·8ã±ã¿ï¼ãã¤ãã³å ¥ãï¼ãé»è©±çªå·ã¯12ã
GT Nitro: Car Game Drag Raceã¯ãå ¸åçãªã«ã¼ã²ã¼ã ã§ã¯ããã¾ãããããã¯ã¹ãã¼ãããã¯ã¼ãã¹ãã«å ¨éã®ã«ã¼ã¬ã¼ã¹ã²ã¼ã ã§ãããã¬ã¼ãã¯å¿ãã¦ãããã¯ãã©ãã°ã¬ã¼ã¹ããã¤ãã¼ï¼å¤å ¸çãªã¯ã©ã·ãã¯ããæªæ¥çãªãã¼ã¹ãã¾ã§ãæãã¯ã¼ã«ã§éãè»ã¨ã«ã¼ã¬ã¼ã¹ã§ãã¾ããã¹ãã£ãã¯ã·ããããã¹ã¿ã¼ããããããè³¢ã使ã£ã¦ç«¶äºãæã¡ç ´ãå¿ è¦ãããã¾ãããã®ã«ã¼ã¬ã¼ã¹ã²ã¼ã ã¯ãã®ãªã¢ã«ãªç©çå¦ã¨ç´ æ´ãããã°ã©ãã£ãã¯ã¹ã§ããªãã®å¿ãççºããã¾ããããã¾ã§ãã¬ã¤ãããã¨ã®ãªããããªãã®ã§ãã GT Nitroã¯ããªãã¬ãã¯ã¹ã¨ã¿ã¤ãã³ã°ã試ãã«ã¼ã¬ã¼ã¹ã²ã¼ã ã§ããæ£ããç¬éã«ã®ã¢ãã·ããããã¬ã¹ãæãåãè¸ãå¿ è¦ãããã¾ããã¾ãã大ç©ãã¡ã¨ç«¶ãã¤ã¤ãè»ã®ãã¥ã¼ãã³ã°ã¨ã¢ããã°ã¬ã¼ããè¡ããªããã°ãªãã¾ãããä¸çä¸ã§æé«ã®ãã©ã¤ãã¼ã¨è»ã¨ã«ã¼ã¬ã¼ã¹ã«æããã¨ã«ãªãããã©ãã°ã¬ã¼ã¹ã®çå
http://1-byte.jp/2011/03/20/20_tips_you_need_to_learn_to_become_a_better_php_programmer/ è¯ãPHPerã ã£ã¦ï¼ãããªãã®ã¯ä¸¸ãã¦ã´ãç®±ã«ã§ãæ¨ã¦ã¦ãã¾ã£ãæ¹ãè³æºã®åå©ç¨ã«ãªãåãããããã·ã ã ã¤ã¾ã俺ãã¡ãããªãã¡ããªããªããã¨ã¯ãããè¯ãPHPerã«ãªããªããããã«ä½ãã§ãããã£ã¦ãã¨ãªã®ãã ãããããå§ãããã 1. ?>ã使ããª?>ãªãã¦ä½¿ã£ã¡ããããªãããã俺ãã¡ã¯BAD PHPerã ç¡é§ãªãã¯ã¤ãã¹ãã¼ã¹ã®åºåã«æ©ã¾ãããããããªã対称æ§ãªãã¦ä¸¸ãã¦ã´ãç®±ã«ã§ãæ¨ã¦ãæ¹ãã¾ã ãã·ã ãé対称æ§ãããè³ç¾ã 2. è¨å®ãã¡ã¤ã«ãPHPã§æ¸ããªrequire_once("config.php"); æªã ã«ãããªãã¨ãã£ã¦ããã¤ãããã®ãããã¤ãã¼ã絶対ã«ãã¡ã ããã®ä¸è¡ãè¦ãã俺ã¯æ¶çµ¶ãã
ãç¥ãã
ã©ã³ãã³ã°
ã©ã³ãã³ã°
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}