
ã»ãã·ã§ã³ããå§ããŸãããã
ASP.NETã¯ãããã€ãã®ã»ãã·ã§ã³ã¢ãŒãããµããŒãããŠããŸãã æãåçŽã§æšæºçãªã€ã³ããã»ã¹ã¢ãŒãïŒã»ãã·ã§ã³ããŒã¿ã¯ãã¢ããªã±ãŒã·ã§ã³ãã¡ã€ã³ã®ããã»ã¹ã¡ã¢ãªã«ä¿åãããŸãã ã©ã®ããŒãžããã§ããã»ãã·ã§ã³["ããŒ"]ã«ã¢ã¯ã»ã¹ããŠãããŒã¿ãååŸãŸãã¯ä¿åã§ããŸãã PHPã«ã¯ãã»ãã·ã§ã³ãæäœããããã®2ã€ã®æšæºã¡ã«ããºã ãfilesãšmemcachedããããŸãã ã»ãã·ã§ã³ãæäœããå ŽåãASP.NETãšPHPã®äž»ãªéãã¯ãç¶æ ã®ä¿æã§ãã ASP.NETã¯ãé·æéå®è¡ãããã¢ããªã±ãŒã·ã§ã³ã§ãã ãã®ã¢ããªã±ãŒã·ã§ã³ã«ã¯ãã¹ã¿ãã¯ãããŒããäžè¬çãªéçå€æ°ããããŸãã åãªã¯ãšã¹ãã¯ãäžè¬çãªããã»ã¹å ã®æ°ããã¹ã¬ããã§ãã èŠæ±ã¯ãå ±æã¡ã¢ãªããã»ã¹ãéããŠç°¡åã«ããåãã§ããŸãã å¯Ÿç §çã«ãPHPã¯æ¬è³ªçã«HTTPã®ã¹ããŒãã¬ã¹ãªæ§è³ªã«ããè¿ãã§ãã åãªã¯ãšã¹ãã¯ãæ°ããçåœã®ããã»ã¹ã§ãã ããã»ã¹ã¡ã¢ãªã«ã¯ããªã¯ãšã¹ããšããã»ã¹èªäœã®éã«äœãæ®ããŸããã ãã¡ãããå ±æã¡ã¢ãªãä»ããŠãªããžã§ã¯ãã転éã§ããŸãããããã¯ç¹ã«åãå ¥ããããŸããã memcachedãªã©ã®ããŒã«ã䜿çšããŠããã¡ã€ã«ãããŒã¿ããŒã¹ãã¡ã¢ãªã«ããŒã¿ãä¿åããããšããå§ãããŸãã
session_set_save_handler()
ä»ããŠ
session_set_save_handler()
ã»ãã·ã§ã³ãã©ãã«ã§ãä¿åã§ããŸãã
æ§æãå ¥åãããã³å€æ°
äžæ¹ã§ã¯ãæ§æã¯siã«äŒŒãŠãããPythonãClojureã®æ§æãªã©ãæãããªæ··ä¹±ãåŒãèµ·ãããŸããã äžæ¹ãCïŒã§ã¯ããã€ã³ãããããããããã¹ãŠã®ãã®ã§ãããšããäºå®ã«æ £ããŠããŸãã PHPã§ã¯ã
->
ïŒç¢å°ãT_OBJECT_OPERATORïŒã䜿çšããŠãã¯ã©ã¹ã®ã€ã³ã¹ã¿ã³ã¹ã®ã¡ã³ããŒãåç §ããŸãã éçã¡ã³ããŒãšå®æ°ã«ã¢ã¯ã»ã¹ããã«ã¯ã
::
äºéã³ãã³ã ã¹ã³ãŒã解決æŒç®å ïŒã䜿çšããŸãã åžžã«æ··ä¹±ããŠãããããã®åŸã¯æ £ããŠããã
å€æ°ãããã°äºæ ã¯ããã«æªåããŸãã ãããã¯åæå®ãããŠããããåæåã§ããŸãããéå§ã®ã¢ããŠã³ã¹ããããŸããã
<?php //... $age = 5; $age = "five"; //.. ?>
ããã¯éåžžã«æå¹ãªã³ãŒãã§ãã ã芧ã®ãšãããååã®åã«$ã䜿çšãããŠããŸãããæåã¯å¿ããŠããŸããïŒ
PHPã«ã¯ããã€ãçããããšããããŸãã ããšãã°ãå€æ°å€æ°ïŒ
<?php $a = 'hello'; $$a = 'world'; // PHP : $a, "hello", $hello, "world". ?>
æååãæ°å€ããªããžã§ã¯ãã®æ¯èŒã
CïŒã«ã¯æåãå³å¯ãªæ¯èŒããã³ãã£ã¹ãããªã·ãŒããããŸãã æ®å¿µãªãããPHPã«ã¯ãåçŽãªãããžã§ã¯ãã§ã®ç掻ãåçŽåããå€ãã®æ¬ ç¹ããããŸãããéåžžã®æ¯èŒã¯éåžžã«è€éã§ãããšããäºå®ã«ã€ãªãããŸãã ãªãã£ã¹ã§ã ããã¯ã¯æ¬¡ã®ããã«æžãããŠããŸãã
$ a == $ b åãžã£ã°ãªã³ã°åŸã®$ aã$ bã«çããå Žåã¯TRUEãåé¡ã¯ããžã£ã°ãªã³ã°ã®ã«ãŒã«ãå¿ã§ç¥ã£ãŠãã人ãå€ããªãããšã§ã ã
ã³ã¬ã¯ã·ã§ã³
.netã«ã¯å€æ°ã®æ¢è£œã®ã¿ã€ããšã³ã¬ã¯ã·ã§ã³ã€ã³ã¿ãŒãã§ã€ã¹ããããå¿ èŠãªåäœã«å¿ããŠãQueueãŸãã¯ConcurrentDictionaryãIListãŸãã¯HashtableãéžæããŸãã ã€ã³ã¿ãã¥ãŒã§ã¯ãã³ã¬ã¯ã·ã§ã³ã®çš®é¡ãã€ã³ã¿ãŒãã§ãŒã¹ã®éããªã©ã«ã€ããŠè³ªåããããŸãã
PHPã«ã¯é£æ³é åïŒããŒãšå€ã®ãã¢ã®ã»ããïŒã®ã¿ããããä»ã®ã³ã¬ã¯ã·ã§ã³ã¯ãããŸããã
ããã¥ã¡ã³ãããïŒ
ãã®ã¿ã€ãã¯ããã€ãã®æ¹åã§æé©åãããŠãããããé åèªäœããªã¹ãïŒãã¯ãã«ïŒãããã·ã¥ããŒãã«ïŒãããã®å®è£ ïŒãèŸæžãã³ã¬ã¯ã·ã§ã³ãã¹ã¿ãã¯ããã¥ãŒãããã³ãã®ä»ã®äœããšããŠäœ¿çšã§ããŸãã é åã®å€ã¯å¥ã®PHPé åã§ããå¯èœæ§ããããããããªãŒãšå€æ¬¡å é åãäœæããããšãã§ããŸãã
Oxidmod UPD ïŒSPLã«ã¯ããŒã¿æ§é ããããŸãã
ãã«ãã¹ã¬ãã
.netã§ã®ãã«ãã¹ã¬ããã«æ £ããŠããŸãã ãŸããªã€ã³ã¿ãã¥ãŒã§ã¯ãã¹ã¬ãããããŒã«ãããã¯ãéåæåŸ æ©ãªã©ã«é¢ãã質åã¯ãããŸããã PHPã§ã¯ããã«ãã¹ã¬ãããšéåæã¯ãããŸãã*ã ã³ã¡ã³ãã§éåæPHPïŒãŠã§ãïŒã®çµéšãå ±æããŠããã ããã°å¹žãã§ãã
* PHPã«ã¯pthreadããããPHPã«ã¯ReactPHPã®ãããªãããžã§ã¯ãããããŸãã ããããWebãããžã§ã¯ãã«ã€ããŠè©±ããšãPHPã«ã¯éåææäœã¯å«ãŸããªããšããæèŠãããè³ã«ããŸãã
ããŒã«
Visual Studioã¯ãæãæåãªè°è«ã®1ã€ã§ãã è±å¯ãªæ©èœãåããç¡æã®IDEã¯ãäœæ¥ã«åœ¹ç«ã¡ãŸãã ããã«ãªãŸã«ããšéçåä»ããè¿œå ããéçºããããžã§ã¯ãããã²ãŒã·ã§ã³ããªãã¡ã¯ã¿ãªã³ã°ã«äŸ¿å©ãªã»ãããååŸããŸãã ããã«ãæè¿Riderãçºå£²ããŸãããããã¯ãããæå³ã§éåžžã®Visual Studioããã®ããã®ã§ãã ããããWindowså°çšã®.net-worldã¯ããã©ãããã©ãŒã ãšåšèŸºã®ããŒã«ã®éçºã«å€§ããªãã¬ãŒãããããŸããã .netã³ã¢ãæ°ãããã©ãããã©ãŒã ãã©ã€ããŒã«ãªãããšãé¡ã£ãŠããŸãã
PHPã«ã€ããŠè©±ããšãçŸæç¹ã§ã®äž»ãªç°å¢ã¯åãJetbrainsã®PHPStormã§ãã å³å¯ãªåæå®ã¯PHP7ã«ãã浞éããªãããããªãã¡ã¯ã¿ãªã³ã°ãšéçãšã©ãŒæ€çŽ¢ãè€éã«ãªããŸãã èšèªã®å°æ¥ã®ããŒãžã§ã³ã§ã®ã¿ã€ããã³ãã£ã³ã°ã®åéã«ãããããŸããŸãªé©æ°ã«ãããããŒã«ãããã¯ãã匷åã§åªãããã®ã«ãªãã§ãããã
PHPã¯ããšããš* nixãã©ãããã©ãŒã ãšã»ãšãã©ã®ã€ã³ãã©ã¹ãã©ã¯ãã£ãããžã§ã¯ãçšã«éçºããããã®ã§ãããããdockerãmysqlãnosqlãªã©ãããç°¡åãã€èªç¶ã«äœ¿çšã§ããŸãã ããã«ããã®ãããªãããžã§ã¯ãã¯å€ãã®å Žåç¡æã§ãããåºç¯å²ã«é åžã§ããŸãã ã»ãšãã©ã®PHPãããžã§ã¯ãã¯ãWindowsãœãªã¥ãŒã·ã§ã³ããŸã£ããå¿ èŠãšããŸããã
æ¬
ããã§ã¯ãPHPã®ãã¹ãŠãæªãïŒãã·ã¢èªïŒã èšèªã¯ã¢ãããŒããåçã«å€ãããããPHP 5.xã«é¢ããæ¬ãè³Œå ¥ããŠèªãããšã¯æéãšãéã®ç¡é§ã§ãã ããŒãžã§ã³7ã«ãããšããªãŸã³ã«é¢ãã3åã®æ¬ããããŸãã Koterovãè³Œå ¥ããäžè¬çã«æºè¶³ããŠããŸãã ãããŠãPHPã®ãã¿ãŒã³ãšã¢ãããŒãã«é¢ããæ¬ã®ç¬¬5çãåŸ ã£ãŠããŸãïŒçŸåšã¯2018幎æ¥ã«åºåã延æãããŠããŸãïŒã 1ã€ç®ã¯Troelsonãšæ¯èŒã§ããŸãïŒãµã€ãºãšæ·±ãïŒã 2ã€ç®ã¯åºãŠããã®ã§éåžžã«è³è³ãããŠããŸã-ç¥ãåãã«ãªãããã«ããŠãã ããã .netã®ç§ã®ãããããã¯ã¯AlbahariãRichterãTsvalinaãããã³Espositoã§ãã ããããè¿ãå°æ¥ãPHP7ã®ããåºæ¬çãªæ¬ãåŸ ã€ã¹ãã§ãããããä»ã®ãšããã瀺ãããŠãããã®ã«å¹æµããé¢é£ã®æ¬ã¯èŠã€ãããŸããã§ããã æããŠããã ããã°å¬ããã§ãïŒ
ãããžã§ã¯ã
Dotnetã¯äžè¬çãªäœ¿çšã®ããã®ãã¬ãŒã ã¯ãŒã¯ã§ãã ãã¹ã¯ãããã¢ããªã±ãŒã·ã§ã³ãã¢ãã€ã«ã¢ããªã±ãŒã·ã§ã³ããµã€ããwebapiãªã©ãèšè¿°ã§ããŸãã Netduinoã.NET Micro Frameworkãªã©ã®éçºããããŸãã PHPã¯ããŸã WebïŒãŸãã¯ã¡ã€ã³Webãããžã§ã¯ããšåãã³ãŒãããŒã¹ã«åºã¥ããããã€ãã®ããã¯ã°ã©ãŠã³ãã¿ã¹ã¯ïŒã«éç¹ã眮ããŠããŸãã
å®éãããŒãµãŒããã£ããããããªã©ãå€ãã®çš®é¡ã®ã¿ã¹ã¯ãPHPã«å®è£ ãããŠããŸãã ããããã»ãšãã©ã®éçºè ã«ãšã£ãŠPHPãšæåã«æ¥è§Šããã®ã¯Webãããžã§ã¯ãã§ãããŸãããŠã§ãäžã§PHPãããåºãè¡šçŸãããŠããã®ã¯ãäœåãæ°ããã°ãPHPãé·ãéãªãŒããŒã§ããç¶ããå¯èœæ§ãé«ãããšã§ãã ãŸããPHPãéšå€è ã«ãªãããšã¯ãŸããããŸãããPHPã®èšå€§ãªæ°ã®ãµã€ãã¯ãvkãavitoãbadooãªã©ãå€ãã®èŠèŽè ãããæåãªãããžã§ã¯ãã§ãã
èšèªéçº
ããã§ãããã¯åºæ¬çãªéãã®ããã«æããŸãã PHPã¯ã³ãã¥ããã£äž»å°ã§ãã RFCã®åœ¢ã§æ°æ©èœãå°çããè°è«ããã人ã ãæ祚ãããªãªãŒã¹èšç»ã«å«ãŸããŸãã ææè -ãã€ã¯ããœãããããŸãã ä»ã圌ãã¯ãªãŒãã³ãœãŒã¹ã«åãã£ãŠãããããè¡ãã圌ãã¯åžžã«ã³ãã¥ããã£ã«è³ãåŸããŸãããã決å®ã¯éåžžã«æš©åšçã§ãã ã©ã¡ãã®ãªãã·ã§ã³ãè¯ããããããŸãããããã©ã¹ãšãã€ãã¹ã®äž¡æ¹ããããŸãã éçºã¯ããäžè²«æ§ããããäºæž¬å¯èœã§ãã ãã®äžæ¹ã§ãå§å¡äŒã¯çŸåšãèšèªã®ããŒãºãæºãããŠããªããšèããŠãããããæ©èœã¯ç§»åããã«æ°žé ã«ååšã§ããŸãã
CïŒãš.Netãã©ã®ããã«é²åããŠããããããããŸãã å人çã«ã¯ã1.1ããå§ããŸãã-ãžã§ããªãã¯ãlinqãTPLãã©ã®ããã«çŸãããèŠããŠããŸãã ããã¯ãããã£ãã ãããããã¹ãŠãäœããã®åœ¢ã§äžè¬çãªã¢ãŠãã©ã€ã³ã«é©åããŸãã æåã®ãã®ã¯ãæåã«å®æããJavaãšããã§æ¡çšãããã¢ãããŒããæ€èšããŸããã CïŒã¯åçã«å€åããŸããã§ããã
PHPã«ã¯ãããæ²ããããã£ãéããããŸãïŒ Habréã§èªãã§ãã ãã ïŒã ãã®èšèªã¯å ã ãéçºã®å®¹æããäœå質ã®ã³ãŒãã«å¯Ÿããæ倧éã®äœ¿ããããã§åºå¥ãããŠããŸããã ãã®äžã§ãç¹å¥ãªç¥èããªããŠããããªãè€éãªWebãµã€ããäœæããããšãã§ããŸããã éåžžã«å€ãã®äººã ãç¹å¥ãªã¹ãã«ãªãã§ãŠã§ãéçºã«æ¥ãŸããã ãã®æéäžã«ãäœåãã®ãããžã§ã¯ããéå§ãããŸããããä»ã§ã¯äœããã®æ¹æ³ã§äœ¿çšããŠããŸãã Webã®éçºã«å¯ŸããPHPã®è²¢ç®ãé倧è©äŸ¡ããããšã¯å°é£ã§ãã æ¥çã¯æé·ãããéãçŸããå°é家ãçŸããã¬ã¬ã·ãŒãããžã§ã¯ãã®ãªãã¡ã¯ã¿ãªã³ã°ã®å¿ èŠæ§ãçããŸããã ãããŠãæ¥çã§ç¥ãããŠããæ¹æ³ã§ã¯å ã®ã³ãŒãããµããŒãã§ããªãããšãæããã«ãªããŸããã ãã®çµæãPHPã¯OOPãã¿ã€ãã³ã°ãšããåªãããã©ã¯ãã£ã¹ã«åããŠUã¿ãŒã³ããŸããã ãããã以åã®è»œãã¯ãŸã æ®ã£ãŠããŸãã
ä»äº
äžçã®çµŠæã¯ãã£ãšé«ããªããšãã€ãæã£ãŠããŸããããããã¯äžè¬çã«ç é¢ã®å¹³åããå€æãããšçå®ã§ãã ãããã1ã€ã®èŠåããããŸããåžå Žã«ã¯ãOOPããã¿ãŒã³ãSOLIDãäœã§ãããããããŠãããã©ã®ããã«äœ¿çšããããç¥ã£ãŠããPHPéçºè ãéåžžã«äžè¶³ããŠããŸãã ç§ãæžããããã«ããããžã§ã¯ãã¯æé·ãããéãšå€§éã®ã³ãŒãã§å€§ãããªããããŠãæ°ãããããžã§ã¯ããéå§ã§ãããã¬ãŒã ã¯ãŒã¯ããããŸããïŒSymfonyãYiiãLaravelïŒã ããããã¹ãŠãéèŠã®å¢å ã«ã€ãªãã£ãŠããŸãã ãããŠãæåããŠãã倧äŒæ¥ã¯è¯ããéãæã£ãŠåãã§ããŸãã ãã®çµæãPHPéçºè ã¯ãåçã®ã¬ãã«ã®ã¹ãã«ãåãã倧éãããèŠæ±ã§ããããã«ãªããŸããã
ãããã«
äžè¬çã«ããã®èšèªã¯ãããéæ³çãïŒéæ³ã®ææ³ãæ¯èŒããŠãžã£ã°ãªã³ã°ïŒã§ãããå€ãã®ééããèš±ããŸãã MS SQL察MySQLã«ã€ããŠã¯ãåãæçš¿ãããããæžãããšãã§ããŸãã æ¢ã«ç€ºãããã®ãããã¯ããã«å€§ããªéããšèå³æ·±ãæ©èœããããŸããããããšã®é£çµãç¹æ§ãäºéåŒçšç¬Šã§ã®æååã®è£éãªã©ã§ãã ã»ãã®æ°åãéžæããŸãã-ã³ã¡ã³ãã§æ®ãã®éšåãè°è«ã§ããŸãã
ææ°ã®PHP 7ããç§ãç¥ã£ãŠããCïŒã«ãŸããŸã䌌ãŠããããšãå¬ããæããŸãïŒ ãŸã PHPãç¡èŠããŠããåå-ããã¯å®å šã«ç°ãªãèšèªã§ãããOOPã¢ãããŒãããã®ãããžã§ã¯ãã«å®å šã«è»¢éã§ãããšç§ã¯è²¬ä»»ãæã£ãŠå®£èšããŸãã
æ°ããèšèªãšæè¡ãåŠã³ãŸãããïŒ ããªãèªèº«ã®æé«ã®ããŒãžã§ã³ã«ãªããŸãããïŒ