PHP
çè ã®å¨å²ã ãããããã¾ããããããããGoogle App Engine Standard Environmentï¼ä»¥ä¸GAE/SEï¼ãå注ç®ããã¤ã¤ããããã«æãã¾ããä»åçè ãgVisorãã¼ã¹ã®GAE/SE PHP 7.2ç°å¢ã«è§¦ã£ã¦ã¿ãã®ã§ããã®å 容ãç´¹ä»ãã¾ãã GAE/SEã¨ã¯ GAE/SEã¯å ç¥PaaSâ¦
æ¬ç¨¿ã¯ç§ãåè·ã®æè¡ããã°ã§å·çããè¨äºããã®is_numeric()ã¯é©åã§ããï¼ããæ¹é¡ã»åç·¨éãã¦æ²è¼ãããã®ã§ããåè·ã«ã¯è¨±å¯ãåã£ã¦ããã¾ã*1ã æ¬ç¨¿ã§ã¯PHPã®é¢æ°is_numeric()ã®ä½¿ãã©ããã«ã¤ãã¦åé¡æèµ·ããã¦ã¿ã¾ãã is_numericé¢æ°ã¨ã¯ ãã¦â¦
ã¨ã¤ããªã«ãã¼ã«ãªã®ã§(?)ãPHPã®æ¥ä»å¦çã®ç´°ããæåãã²ã£ããå¤ãã£ã話ã®è§£èª¬ããã¾ããã¡ãªã¿ã«æ¬ç¨¿ã¯Slackã°ã«ã¼ããPHPã¦ã¼ã¶ã¼ãºãã®#randomãã£ã³ãã«ã§ã®è°è«ãã¾ã¨ãç´ãããã®ã§ããè°è«ã®ãã£ãããä¸ãã£ãmsngãããtadsanãããdo_akiããâ¦
ãªãã¨ãªãPHPããã¥ã¢ã«ãçºãã¦ããã¨ããããªãã¬ã¯ã·ã§ã³æ©è½ã«ä¸è¨ã®ãããªã¡ã½ãããè¦ã¤ãã¾ããã ReflectionMethod::getPrototype â ã¡ã½ããã®ãããã¿ã¤ãã (åå¨ããã°) åå¾ãã http://php.net/manual/ja/reflectionmethod.getprototype.php â¦
2015å¹´12æã«PHP 7.0.0ããªãªã¼ã¹ããã¦ãã2å¹´ã¨å°ãçµã£ã¦ãã¾ãã¾ãããä»æé ã«ã¯ç¡äºPHP 7.2.0ããªãªã¼ã¹ãããããã§ãããçæ§ã®åå ããã¸ã§ã¯ãã®PHP 7å°å ¥ã¯é²ãã§ããã§ããããï¼ã¾ã PHP 5ç³»ãªãã ãããã¨ããæ¹ãPHP 7ãé«éã ã¨ããåãããâ¦
PHP Advent Calendar 2017ã®3æ¥ç®ã§ããå ¬éãé ããªã£ã¦ãã¾ãã¾ãããããããªããã çè ã¯php-timecopã¨ããPHPæ¡å¼µã5å¹´éã»ã©ã¡ã³ããã³ã¹ãã¦ãã¾ãããã®PHPæ¡å¼µã¯Cã§æ¸ããã¦ããã®ã§ãããTravis CIãAppVeyorãªã©è¤æ°ã®ã¯ã©ã¦ãCIãµã¼ãã¹ãçµã¿â¦
10æ8æ¥ã«éå¬ãããPHPã«ã³ãã¡ã¬ã³ã¹2017ã§LTçºè¡¨ããã¾ããã以ä¸ãçºè¡¨è³æã§ãã PECLã¯ç»é²ã¾ã§ã®æ·å± ãé«ãããªå°è±¡ããã£ãã®ã§ã以åã¯èªä½ã®PHPæ¡å¼µãç»é²ãããªãã¦èããããªãã£ãã®ã§ããããã£ã¦ã¿ããæ¡å¤ãã£ããç»é²ã§ãããã¨ããå 容ãâ¦
PHP+PDO+MySQLã®ç°å¢ã§ã¯ãPHP-MySQLéã®éä¿¡ã«ã¤ãã¦zlibã使ã£ãå§ç¸®ãããã³ã«ãå©ç¨ãããã¨ãã§ãã¾ãããã®æ©è½ã¯ãDBãµã¼ãã®CPUå©ç¨çã«ååä½è£ãããããã¤PHP-MySQLéã®ãããã¯ã¼ã¯å¸¯åãé¼è¿«ãã¦ããç¶æ³ã§æç¨ã§ãã MySQLã®å§ç¸®ãããã³ã«ã¨â¦
çè ã¯PHPã®ç¾å¨æå»ãä¸æ¸ãããPHPæ¡å¼µã¢ã¸ã¥ã¼ã«php-timecopãéçºãã¦ãããããPHPã®æéããã¿ã®ãã¹ããä¸éä¸è¬ã®äººããå¤ãæ¸ãã¦ããã¨æãã¾ãããã¹ãã±ã¼ã¹ä¸ã§usleepé¢æ°ãå¤ç¨ãã¦ããã®ã¯ä¸çä¸ã§ãçè ãããããããã¾ãããã¨ããã§ãå â¦
ãããã5å¹´ã»ã©ã¡ã³ããã¦ããæä½ã®PHPæ¡å¼µãphp-timecopãã§ããããã®ãã³PECLã«ç»é²ãã¾ããï¼PECL :: Package :: timecopï¼ã PECLã¨ããã®ã¯PHPæ¬ä½ã«å«ã¾ããªãPHPæ¡å¼µãæä¾ããå ¬å¼ã®ãªãã¸ããªã§ããPECLã®ã¢ã«ã¦ã³ãã¯æ¿èªå¶ã«ãªã£ã¦ããã誰ã§â¦
表é¡ã®éãã§ãããPHPã®ç¹å®ã®ãã¼ã¸ã§ã³ã«ããã¦ãçæããDateTimeãªãã¸ã§ã¯ãã«å¯¾ãã¦æå»ã®æä½ãè¡ãã¨æå¾ ã¨1æéããã¦ãã¾ããã¨ãããã¾ãã format('c')); // string(25) "1970-01-01T00:00:00+00:00" $dt->modify('+0 days'); var_dump($dt->foâ¦
ããã°ã©ã ãæ¸ãã¦ããã¨ãå ¥åå¤ãè¾æ¸ã«å«ã¾ãã¦ãããã調ã¹ãããããªãã¨ãããã¾ãããã¨ãã°ãã¦ã¼ã¶ã¼ã«é½éåºçåãå ¥åããã¦ããããæ£ããé½éåºçåã§ãããã©ããã調ã¹ãããã¨ãããããªãã¨ãããããããã¾ããããã®ãããªå 容ãPHPã§æ¸â¦
PHPã®ã·ã³ãã«ãã¼ãã«ã¨ããã®ã¯Cå®è£ ã®ã¬ãã«ã®ç¨èªã§ããã®æç¹ã§æå¹ãªå¤æ°ãã¼ãã«ã®ãã¨ãæãã¾ããã¤ã¾ããã°ãã¼ãã«ã¹ã³ã¼ããªãã°ãã¼ãã«å¤æ°ã管çããå¤æ°ãã¼ãã«ãé¢æ°ã¹ã³ã¼ããªããã¼ã«ã«å¤æ°ã管çããå¤æ°ãã¼ãã«ã®æå³ã«ãªãã¾ãã ä»â¦
æè¿ã®Windows 10ã«ã¯Linuxãã¤ããªããã®ã¾ã¾åãããããªä»çµã¿ãå°å ¥ããã¦ãã¾ãããã㯠Windows Subsystem for Linux (WSL) ã¨ã Bash on Ubuntu on Windows (BoW) ãªã©ã¨å¼ã°ãã¦ãããã®ã§ãVMå®è¡ã§ãªãWindowsãã¤ãã£ãã§Linuxãåããã¨ããæ欲â¦
æ¥ä»é¢é£ã®ãã¹ãã±ã¼ã¹ãæ¸ãã¦ããããããµã³ã¼ã«ã¹ã®1970å¹´4æ1æ¥0æã¯ãµãã¼ã¿ã¤ã ã§ã¯ãªãããã©ã2012å¹´4æ1æ¥0æã¯ãµãã¼ã¿ã¤ã ã§ãããã¨ã«æ°ã¥ãã¾ãããä½ãã®ééããããªããã¨æã£ã¦æ¹ãã¦èª¿ã¹ã¦ã¿ãã¨ãããããµã³ã¼ã«ã¹ã§4æ1æ¥ããµãã¼ã¿ã¤â¦
æ¬æ¥ã¯ã¨ã¤ããªã«ãã¼ã«ãªã®ã§ãã¦ã½ã§ãæ¬å½ã§ã誰ãå°ããªãPHPã®ãã°ã®è©±ããã¾ãã PHP 7.1.0ããPHPã®DateTimeã¯ã©ã¹ã§ãã¤ã¯ãç§ã®æ±ããå¼·åãã¦ããããã§ãæåãã³ã¼ãã®å¤æ´ããã©ãã©è¦åãããã¾ããï¼åèï¼ãPHP 7.1ããDateTimeãç¾å¨æå»ã®â¦
CLIçã®PHPãgdbä¸ã§åããã¤ã¤ãå é¨çãªãã¼ã¿æ§é ãè¦ãè¦ããã¨ãã§ãããããªDockerã¤ã¡ã¼ã¸ãä½ã£ã¦Docker Hubã«ã¢ãããã¼ããã¾ãããDockerç°å¢ããããã°ããã«åãããã¨ãã§ãã¾ãã ãã®ã¤ã¡ã¼ã¸ãåããã°Cã®ã³ã¼ããæ¸ããªãã¦ãPHPå é¨ã®ãâ¦
æ¨æ¥12æ11æ¥ã«ç¬¬ä¸åéPHPåå¼·ä¼ãéå¬ãããã¾ãããç§ãå«ãçºè¡¨è 6人ã¨ãããã¨ã§ãã¨ã¦ãçãä¸ãã£ãåå¼·ä¼ã«ãªãã¾ãããçºè¡¨è ã®çãã¾ãã¾ããåå ããã ããçãã¾ãæ¬å½ã«ãããã¨ããããã¾ãããã¾ãä¼å ´æä¾ããã ãããã¯ã·ãæ ªå¼ä¼ç¤¾ãã¾ã«â¦
çè ãPHPããããå§ããããããPerlã®ã³ã¬ã¯PHPã§ã¯ã©ããããã ããï¼ãã¨æããã¨ãé »ç¹ã«ããã¾ãããä¸é¨ã®çåã«ã¤ãã¦ã¯è§£èª¬ãè¦ã¤ãããèªåã§ã½ã¼ã¹ã³ã¼ããèªãã ããã¦è§£æ±ºãããã®ã®ãèããã®ãããã¦ãã¾ã£ããã®ãããã¾ãããã®ä¸ã¤ãæ£è¦â¦
ï¼2016/10/5 20:40 追è¨ï¼èª¤è§£ãæãã¦ããé¨åããããããªã®ã§ææ«ã«è£è¶³ã追è¨ãã¾ããã巨大ãªããã°ã©ã ãé£ãããã ãã§PHPãæ»ã¬ããã§ã¯ããã¾ããã æ¯åº¦ããªãã¿ãæå³çã«éç®±ã®é ãã¤ã¤ãã¦ã¿ããã£ã¦è©±ã§ããããPHPããã°ã©ã ãå®è¡ããã次ã®â¦
æ¨æ¥8/27ã«LLoTã®ãLanguage Updateãã®10åæ ã§PHPã®è©±ããã¾ãããçºè¡¨è³æã¯ä»¥ä¸ã§ãã ä¼å ´ã«PHPã®äººã¯ã»ã¨ãã©ããªãåæã ã£ãã®ã§ãä»ã®è¨èªã®äººã«ãæè¿ã®PHPã£ã¦ãããªæãã§ãããããä¼ãããã¤ããã§è³æä½æãã¾ãããè¨ãããã£ããã¨ã¯ã ããâ¦
ï¼7/3 14:05追è¨ï¼Javaã«é¢ããè¨è¿°ã«ã¤ãã¦èª¤èªããã£ãã®ã§ç大ã«æ¸ãæãã¾ãããJava 6ãJava 7ãJava 8ããããã§å®è£ ãå¤ãã£ã¦ããããã§ããï¼7/13 23:55追è¨ï¼æ¬è¨äºä¸ã§ã¯roundãåæ¨äºå ¥ã¨è¨ãåã£ã¦ãã¾ã£ã¦ãã¾ããããã¯çè ãC99ã®roundãåºâ¦
èªä½ã®PHPæ¡å¼µã§ããphp-timecopãPHP 7ã«å¯¾å¿ããã¦ã¿ã¾ããããã®æ©ä¼ã«æ¹ãã¦php-timecopã®ç´¹ä»ããã¦ã¿ã¾ãã php-timecopã¨ã¯ php-timecopã¨ããã®ã¯çè ã4å¹´ã»ã©åã«ä½ã£ãPHPæ¡å¼µã§ãç¾å¨æå»ã«ç´ä»ããå¤ãè¿ãPHPé¢æ°ã«ã¤ãã¦ãåºæºã¨ãªãç¾å¨æå»â¦
ï¼2016/01/01 02:20追è¨ï¼mbstring.func_overloadã®ç« ãç大ã«æ¸ãæãã¾ããããªããå»æ¢ãããã¨æãè¾¼ãã§ããã§ãããç¹ã«å»æ¢ãããã¦ãªãã¦ãPHP 7ã§ãåããã¨ã¯åãã¾ãããã ãä»çµã¿ä¸strlenã ãè¨ããã¨ãèããªããªã£ã¦ãã¾ãã®ã§ã使ãéã¨ãã¦â¦
ãã®ã¨ã³ããªã¯éPHP Advent Calendar 2015ã®23æ¥ç®ã§ãã å æ¥ã®è¨äºãPHPã®ã¤ã³ã¿ã¼ã³åæååã¨ã¯ä½ããã§ã¤ã³ã¿ã¼ã³åæååã«ã¤ãã¦ç´¹ä»ãã¾ããããè¨äºã ãã§ã¯å®éã«ã©ã使ããã¦ããããã³ã¨æ¥ãªãã£ãæ¹ãå¤ãã£ãããããã¾ãããä»åãPHP 7.0.1â¦
ãã®ã¨ã³ããªã¯éPHP Advent Calendar 2015ã®14æ¥ç®ã§ãã æ¬ç¨¿ã§ã¯ãPHP7ã®zend_stringæ§é ä½å°å ¥ã«ããã¡ãªããã®è©±ããã¾ãã PHP5ã¨PHP7ã®æåååã®æ±ã PHP5ã§ã¯ãæåååã®å¤æ°ã¯æ¬¡ã®ããã«ã¡ã¢ãªã«å²ãå½ã¦ããã¾ãï¼æ¨ªå¹ ãã£ã±ãã8ãã¤ãï¼ã æâ¦
ãã®ã¨ã³ããªã¯éPHP Advent Calendar 2015ã®11æ¥ç®ã§ãã strdumperã¨ããPHPæ¡å¼µã¢ã¸ã¥ã¼ã«ãä½ãã¾ããã ç¾æç¹ã§ã¯ããã®æ¡å¼µã¢ã¸ã¥ã¼ã«ã¯ä¸è¨ã®3ã¤ã®é¢æ°ãå®è£ ãã¦ãã¾ãã str_dump void str_dump(mixed $var) $varãæåååã ã£ãå ´åã«ã詳細ã®æ â¦
12/6ã®Go Conference 2015 Winterã§Goã§PHPæ¡å¼µã¢ã¸ã¥ã¼ã«ãæ¸ããããã¨ããå 容ã®LTããã¦ãã¾ããã ãã£ããè¨ãã¨ãGoã£ã¦è¨ã£ã¦ãCã®ã¬ãã«ã«è½ã¡ã¦ããã°é£æºãªãã¦ç°¡åã§ããã£ã¦æã£ã¦ããã©ãGoãPHPæ¡å¼µããã«ãããã»ã¹ãé è½ããã¦ãã®ã§ãè½ã¨â¦
ãã®ã¨ã³ããªã¯éPHP Advent Calendar 2015ã®3æ¥ç®ã§ãããªãã@do_akiããã«ãã4æ¥ç®ã®è¨äºãZEND_TICKS 㨠tick é¢æ°ããèªãã å¾ã§æ¸ãã¦ãã¾ãã æ¬ç¨¿ã§ã¯ããã¾ãæ¥æ¬èªã§ã®èª¬æãè¦ããã¨ããªãPHPã®ã¤ã³ã¿ã¼ã³åæåå(interned strings)ã«ã¤ãã¦ç´¹â¦
ãã®ã¨ã³ããªã¯éPHP Advent Calendar 2015ã®2æ¥ç®ã§ãã3æ¥ç®ã¾ã§ã¯åãæ¸ãäºå®ã§ããã4æ¥ç®ä»¥éã®æ´è»ã絶è³åéä¸ã§ãã PHPã®+æ¼ç®åã§æååé£çµã§ããªããï¼ PHPã®+æ¼ç®åã¯ç®è¡å ç®ã®æ¼ç®åã§ããã¤ã¾ãããªãã©ã³ããæ´æ°ã¾ãã¯æµ®åå°æ°ç¹æ°ã¨ãã¦â¦