
2幎éã®éçºã®åŸã
PHPixieãã¬ãŒã ã¯ãŒã¯ã®3çªç®ã®ããŒãžã§ã³ã
宿ããŸãã ã ãªããããªã«é·ãã®ïŒ å®éããã®éã«3ã€ä»¥äžã®ORMãšãã³ãã¬ãŒããšã³ãžã³ãäœæãããŸãããããããã¯åé€ãããåã³æžãæããããŸããã ç¹ã«ãã¹ãã«å€ãã®æéãè²»ãããããããªãã§ã¯èšå€§ãªæ°ã®æ¹åã«æ°ä»ããªãã£ãã§ãããã å€ãã®å Žåãç§ã¯ãã®ããžãã¹ãé¢ãã2çªç®ã®ããŒãžã§ã³ã忢ããããã«ã¢ãžã¥ãŒã«ã远å ãããã£ãã ãã§ãã ããããä»ãããããã¹ãŠã®å埩ãå®äºãããšãããããç§ãç¥ã£ãŠããïŒãããŠç§ãã§ããããšïŒæé«ã®å®è£
ã§ãããšèªä¿¡ãæã£ãŠèšãããšãã§ããŸãã ããã¯ãPHPixie 3ãããªããåã°ãããã®ã§ãïŒ
- PSR-2ããã³PSR-4æšæºã«åŸã
- PSR-7ãªã¯ãšã¹ããšããããšã®äŸ¿å©ãªäœæ¥ã®ããã®ã©ã€ãã©ãªã®ãµããŒã
- ã·ã³ãã«ãªPHPã䜿çšãããã³ãã¬ãŒããšã³ãžã³ã§ãããTwigã®ãããªç¶æ¿ãšãããã¯ããµããŒãããŠããŸãã æ¡åŒµæ©èœãä»ã®åœ¢åŒïŒHAMLãªã©ïŒãç°¡åã«è¿œå ã§ããŸãã
- ActiveRecordãšããŠäœ¿ããããããåæã«ã¯ãšãªããšã³ãã£ãã£ããªããžããªã®ããžãã¯ãåå¥ã«å£ãORMã MongoDBã³ã¬ã¯ã·ã§ã³ãžã®ãªã³ã¯ãšãå€ãã®ãšã³ãã£ãã£ã«å¯Ÿããã¯ãšãªã®æé©åãåæã«ãµããŒãããŸãïŒããšãã°ã1ã€ã®ãªã¯ãšã¹ãã§è€æ°ã®ã¿ã°ãæã€è€æ°ã®èšäºããªã³ã¯ã§ããŸãïŒã
- éåžžã®ã³ã³ãããŒã©ãŒã®ä»£ããã«ããã»ããµãŒã䜿çšããã¢ãããŒãã«ãããä»»æã®ã¢ãŒããã¯ãã£ãŒãäœæã§ããŸãã
- èšå®ããã©ã«ãã«è©³çްã«åå²ã§ããæ§æã³ã³ããŒãã³ãïŒããšãã°ãããŒlanguages.en.plural.mouseã¯ã languages / en.phpãã¡ã€ã«å
ã®ããŒplural.mouseãåç
§ã§ããŸãïŒ
- ãã³ãã«ã·ã¹ãã ã«ãããè€æ°ã®ãããžã§ã¯ãã§1ã€ã®ã³ãŒããç°¡åã«äœ¿çšããä»ã®ãŠãŒã¶ãŒãšå
±æã§ããŸãã ãã³ãã«ã¯ãä»ã®ã©ã€ãã©ãªãšåæ§ã«ã³ã³ããŒã¶ãŒãä»ããŠã€ã³ã¹ããŒã«ãããŸãã
ãããŠä»ãPHPixie 3ã§éçºãéå§ããããã«ç¥ã£ãŠããå¿
èŠããããã¹ãŠã瀺ãçããã¥ãŒããªã¢ã«ã§ãã
èšçœ®æåã«ãComposerã䜿çšããŠãããžã§ã¯ãã¹ã±ã«ãã³ãäœæããŸãã
php composer.phar create-project phpixie/project your_project_folder 3.*-dev
HTTPãµãŒããŒã
/ webãã£ã¬ã¯ããªãã©ã«ããŒã«èšå®ããŸãã Nginxã®å Žåããããæ§æã«è¿œå ããå¿
èŠããããŸãã
location / { try_files $uri $uri/ /index.php; }
Windowsã䜿çšããŠããå Žåãã·ã§ãŒãã«ãã/ web / bundles / appãæã/ bundles / app / webãäœæããå¿
èŠããããŸãã
Linuxããã³MacOSã§ã¯ãã·ã§ãŒãã«ããã¯ãã®ãŸãŸäœ¿çšã§ããŸãã ããã©ã«ãã®ãã³ãã«Webãã¡ã€ã«ãžã®ã¢ã¯ã»ã¹ãéãããã«å¿
èŠã§ãïŒãã¹ãŠã説æããŸãïŒã
ããã§ã
localhostãªã³ã¯ã«ç¶ããŠãçãæšæ¶ã衚瀺ãããŸãã
ãã³ãã«PHPixie 3ã¯ãããšãã°Symfony2ã®ããã«ããã³ãã«ã·ã¹ãã ããµããŒãããŠããŸãã ãããããŸã 䜿çšããŠããªãå Žåã¯ããµã€ããè«ççãªéšåã«åå²ããä»ã®ãããžã§ã¯ãã«ç°¡åã«è»¢éããŠComposerã§å
±æã§ããããšãæ³åããŠãã ããã ããšãã°ããŠãŒã¶ãŒèªèšŒã¯ãç¬èªã®ãã³ãã¬ãŒããã¹ã¿ã€ã«ãç»åãå«ãåå¥ã®ãã³ãã«ãšããŠäœæããè€æ°ã®ãããžã§ã¯ãã§äœ¿çšã§ããŸãã ãã³ãã«ã¯ãLinuxãªã©ã®ãããžã§ã¯ãã§ãããŠã³ããããããã£ã¹ã¯ã¯ãã¡ã€ã«ã·ã¹ãã ã«ããŠã³ããããŸãã
æåã«ããããžã§ã¯ãã¯ãã/ bundles / appãå
ã®åäžã®ãã³ãã«ãappãã§äœæãããŸãã ãŸãã3çªç®ã®ããŒãžã§ã³ã®ãããžã§ã¯ãã®æ§é ã¯2çªç®ã®ããŒãžã§ã³ãããè€éã«èŠããŸããããããŸã§ã®ãšãããã³ãã«ã¯1ã€ãããããŸãããããã®ãã£ã¬ã¯ããªä»¥å€ã§äœããè¡ãããšã¯ã»ãšãã©ãããŸããã
ããã»ããµãŒMVCã³ã³ãããŒã©ãŒã®äœ¿ãæ
£ããæŠå¿µã¯PHPixieã§å€§å¹
ã«æ¡åŒµãããç¡éã®ãã¹ããšä»»æã®ã¢ãŒããã¯ãã£ããµããŒãããããã«ãªããŸããã èãæ¹ã¯ããã¬ãŒã ã¯ãŒã¯ã«é¢ããŠãã³ã³ãããŒã©ãŒãã1ã€ãããªããšããããšã§ãã ããããããšãã°ã圌ã¯èªåã®æ©èœãããµãã³ã³ãããŒã©ãŒãã«å§ä»»ããäžè¬çã«ã¯äœã§ããããããšãã§ããŸãã ããã»ããµã€ã³ã¿ãŒãã§ã€ã¹ïŒçŸåšåŒã³åºãããŠããïŒã¯ã1ã€ã®
ããã»ã¹ïŒ$èŠæ±ïŒã¡ãœããã®ã¿ã§æ§æãããŠããŸãã ããã«ããããªã¯ãšã¹ããç°ãªãæ¹æ³ã§åŠçããããã»ããµã®ããã€ãã®åºæ¬ã¯ã©ã¹ãäœæã§ããŸããã ãã¡ããããªãã·ã§ã³ã®1ã€ã¯éåžžã®ã³ã³ãããŒã©ãŒãšå®å
šã«é¡äŒŒããŠããããããã¹ãŠãæ§åŒã®æ¹æ³ã§è¡ãããšãã§ããŸããããã¯ãæšæºã®
Greetããã»ããµãŒãè¡ãããšã§ãã€ã³ã¹ããŒã«åŸã«æšæ¶ã衚瀺ããŸãã
次ã«ããã¹ãŠãè©Šãæ°ãã
Quickstartããã»ããµãäœæããŸãã
次ã«ããã³ãã«ã®ã¡ã€ã³ããã»ããµã«ç»é²ããå¿
èŠããããŸãã ããã©ã«ãã§ã¯ãã«ãŒãã£ã³ã°ãã©ã¡ãŒã¿ã§æå®ãããããã»ããµã«ãªã¯ãšã¹ããéä¿¡ããããã«æ§æãããŠããŸãã 2çªç®ã®ããŒãžã§ã³ã§ã¯ãã³ã³ãããŒã©ã¯ããŒã ã¹ããŒã¹ãšã¯ã©ã¹åã«ãã£ãŠèªåçã«æ±ºå®ããããããã©ãã«ãç»é²ããå¿
èŠã¯ãããŸããã§ããã ãã®ã¢ãããŒãã¯ãã¯ã©ã¹ã®åœåãšãã©ã«ããŒæ§é ãåããããã€ãã®ãã¬ãŒã ã¯ãŒã¯ã«é©åãããšããç¹ã§äžäŸ¿ã§ãã ããã§ãåã³ã³ãããŒã©ãŒã«ãã«ããŒã¡ãœããã远å ãããã ãã§ãã¯ã©ã¹ã«å¥œããªååãä»ããããã³ã³ã¹ãã©ã¯ã¿ãŒãä»ããŠããŸããŸãªãã©ã¡ãŒã¿ãŒãæž¡ãããã§ããŸãã
localhost /ã¯ã€ãã¯ã¹ã¿ãŒãã«ç§»åãããšããã¯ã€ãã¯ã¹ã¿ãŒããã¥ãŒããªã¢ã«ãã¡ãã»ãŒãžã衚瀺ãããŸãã
ããã§ããã¬ãŒã ã¯ãŒã¯ã®ä»ã®éšåã詊ãããšãã§ããŸãã
ã«ãŒãã£ã³ã°å€ãã®å ŽåãããŒãžãŸãã¯è£œåã®IDãŸãã¯ååãå«ã
/ quickstart / view / 4ã®ãããªãªã³ã¯ãäœæããå¿
èŠããããŸãã ãããè¡ãã«ã¯ããŸãããã»ããµãŒã§åçŽãªã¢ã¯ã·ã§ã³ãäœæããŸãã
ããã§ãæ§æã«æ¢ã«ç»é²ãããŠããã«ãŒã«ã«ããã®ãã©ã¡ãŒã¿ãŒã䜿çšããã«ãŒã«ã远å ããå¿
èŠããããŸãã ããããæåã«ããããã©ã®ããã«èŠããããèæ
®ããŠãã ããïŒ
远å ããéšåã¯æ¬¡ã®ããã«ãªããŸãã
'view' => array( 'type' => 'pattern',
ã«ãŒãã¯é çªã«éžæããããããããå
·äœçãªã«ãŒã«ãäžè¬çãªã«ãŒã«ãããæ§æå
ã§é«ãããšãéèŠã§ãã
localhost / quickstart / view / 5ã«ç§»åãããšãå¿çã«ã5ãã衚瀺ãããŸãã
èšå®ã§éæã§ããããšã®ç°¡åãªäŸãšããŠãããã€ãã®ã«ãŒãã«å
±éã®ãã¬ãã£ãã¯ã¹ããã©ã¡ãŒã¿ãŒã§æå®ããããšããŸãã è€éã«æããŠãæ§ããŸããããçŸæç¹ã§ã¯åé¡ã§ã¯ãããŸããã
array(
ãã®ã¢ãããŒãã«ãããããæè»ãªèšå®ãååŸã§ããã ãã§ãªãïŒçµå±ããã¬ãã£ãã¯ã¹ã1ç®æã§å€æŽããã ãã§ååã§ããããã¹ãããããã¹ãŠã®ã«ãŒãã§å€æŽãããŸãïŒãããã©ãŒãã³ã¹ãåäžããŸãããã¬ãã£ãã¯ã¹ãé©åããªãå Žåãç»é²ãããŠãããã¹ãŠã®ã«ãŒããã¹ããããããããã§ã
å
¥åºåæ¢ã«ãæ°ã¥ãã®ããã«ãåã¢ã¯ã·ã§ã³ã¯ãã©ã¡ãŒã¿ãŒãšããŠãªã¯ãšã¹ããåãåããäœããã®ã¬ã¹ãã³ã¹ãè¿ããŸãã ãªã¯ãšã¹ãããããŸããŸãªæ
å ±ãååŸããæ¹æ³ã¯æ¬¡ã®ãšããã§ãã
ãããŠä»ãããå°ãè峿·±ãïŒ
$data = $request->data();
JSONãªã¯ãšã¹ãã¯ãèªåçã«$ request-> dataïŒïŒã«è§£æãããŸããããã«ãããAJAXãªã¯ãšã¹ãã®åŠçãæ¢ã«å®¹æã«ãªããŸãã
çµè«ã¯ããã«ç°¡åã§ãïŒ
ãã¿ãŒã³
PHPixieãã³ãã¬ãŒããšã³ãžã³ã¯ããã³ãã¬ãŒãã®ç¶æ¿ããããã¯ãããã³ã«ã¹ã¿ã æ¡åŒµæ©èœããã©ãŒããããç°¡åã«è¿œå ããæ©èœããµããŒãããŠããŸãã
ããã©ã«ãã§ã¯ãæšæºãã³ãã«ã¯
bundles / app / asset / templatesãã©ã«ããŒãããã³ãã¬ãŒããããŒãããŸãã
æšæºã®
Greetããã»ããµã§äœ¿çšããã2ã€ã®ãã¡ã€ã«ãæ¢ã«å«ãŸããŠããŸãã
ç°¡åãªãã³ãã¬ãŒããäœæããããšããå§ããŸãããïŒ
<p><?=$_($message)?></p>
次ã«ãããã»ããµã«å¥ã®ã¢ã¯ã·ã§ã³ã远å ããŸãã
ãªã³ã¯
localhost / quickstart / renderã«çµæã
衚瀺ãããŸãé
åã§ã¯ãªããã³ãã¬ãŒãã«ãã©ã¡ãŒã¿ãåçã«æž¡ãå Žåã¯ããã®ã¢ãããŒããå©çšã§ããŸãã
$template = $this->components()->template(); $container = $template->get('app:quickstart/message'); $container->message = 'hello'; return $container->render();
ãã³ãã¬ãŒãã®ç¶æ¿
åºæ¬çãªèŠªãã³ãã¬ãŒãã远å ãã
<!-- bundles/app/assets/templates/quickstart/layout.php --> <h1>Quickstart</h1> <div> <!-- --> <?=$this->childContent();?> </div>
ãããmessage.phpã§äœ¿çšããŸã
<?php $this->layout('app:quickstart/layout');?> <p><?=$_($message)?></p>
ããã§ã
localhost / quickstart / renderã§ ããã³ãã¬ãŒãã¯ãã§ã«èŠªã§ã©ãããããŠããŸãã ã¡ãªã¿ã«ã芪ãã³ãã¬ãŒãã¯ãã®èŠªãæã€ããšãã§ããŸãã
芪ãã³ãã¬ãŒãã®ããŸããŸãªå Žæã«ã³ã³ãã³ãã眮ãæããã远å ãããã§ãããããã¯ã䜿çšãããšãããæè»ã«ãªããŸãã
<!-- bundles/app/assets/templates/quickstart/layout.php --> <!-- 'header' --> <?php $this->startBlock('header'); ?> <h1>Quickstart</h1> <?php $this->endBlock(); ?> <!-- --> <?=$this->block('header') ?> <div> <!-- --> <?=$this->childContent();?> </div>
次ã«ãmessage.phpãããã®ãããã¯ã«ã³ã³ãã³ãã远å ããŸãã
<?php $this->layout('app:quickstart/layout');?> <?php $this->startBlock('header'); ?> <h2>Message</h2> <?php $this->endBlock(); ?> <p><?=$_($message)?></p>
ããã©ã«ãã§ã¯ããããã¯å
ã®ã³ã³ãã³ãã¯è¿œå é ã«ãªã£ãŠããŸãã ããã«ãããããšãã°ãããŒãžã«å¿ããŠã¹ã¿ã€ã«ãšã¹ã¯ãªããã®æ¥ç¶ãç°¡åã«æŽçã§ããŸãã ããããåãããèªäœã远å ããŠããªãå Žåã«ã®ã¿ã芪ãã³ãã¬ãŒãã«ã³ã³ãã³ãããããã¯ã«è¿œå ããããã«æç€ºããããšãã§ããŸãã
<!-- bundles/app/assets/templates/quickstart/layout.php --> <?php if($this->startBlock('header', true)): ?> <h1>Quickstart</h1> <?php $this->endBlock(); endif;?> <!-- ... -->
ãŸãã¯ãããšãã°ãã³ã³ãã³ããæåŸã§ã¯ãªããããã¯ã®æåã«è¿œå ããŸãã
$this->startBlock('header', false, true);
ãµããã¿ãŒã³
ãµããã¿ãŒã³ãæå¹ã«ããããšãå¯èœã§ãã
<?php include $this->resolve('some:template');?>
ãªã³ã¯çæ
ãã³ãã¬ãŒãã«ãªã³ã¯ãçæããã«ã¯ã
httpPathãš
httpUriã® 2ã€ã®ã¡ãœããããã
ãŸã ã
<?php $url=$this->httpPath( 'app.default', array( 'processor' => 'hello', 'action' => 'greet' ) ); ?> <a href="<?=$_($url)?>">Hello</a>
ããŒã¿ããŒã¹ãšORM
ããŒã¿ããŒã¹æ¥ç¶ã¯ããã³ãã«å€ã®ã°ããŒãã«æ§æã§èšè¿°ãããŸãã ããšãã°ãMySQLãžã®æ¥ç¶ã¯æ¬¡ã®ããã«ãªããŸãã
PHPixieã¯ããªã¬ãŒã·ã§ãã«ããŒã¿ããŒã¹ã ãã§ãªãã** MongoDB **ããµããŒãããŠããŸãã
ãªã¬ãŒã·ã§ãã«ããŒãã«ãšMongoDBã³ã¬ã¯ã·ã§ã³éã®é¢ä¿ïŒ1察1ã1察å€ãå€å¯Ÿå€ïŒãèšè¿°ããåãæ§æã䜿çšããŠããããæäœããããšãã§ããŸãã çŸåšããã®ã¬ãã«ã®çµ±åããµããŒãããŠããä»ã®PHP ORMã¯ãããŸããã
ããŒã¿ããŒã¹ãæºãããŸãã ããšãã°ãã¿ã¹ã¯ã§æ§æããããããžã§ã¯ãã®ãã©ãã«ãŒãäœæãããšããŸãã å³ã¯æ¬¡ã®ããã«ãªããŸãã
CREATE TABLE `projects`( `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `name` VARCHAR(255), `tasksTotal` INT DEFAULT 0, `tasksDone` INT DEFAULT 0 ); CREATE TABLE `tasks`( `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, `projectId` INT NOT NULL, `name` VARCHAR(255), `isDone` BOOLEAN DEFAULT 0 ); INSERT INTO `projects` VALUES (1, 'Quickstart', 4, 3), (2, 'Build a website', 3, 0); INSERT INTO `tasks` VALUES (1, 1, 'Installing', 1), (2, 1, 'Routing', 1), (3, 1, 'Templating', 1), (4, 1, 'Database', 0), (5, 2, 'Design', 0), (6, 2, 'Develop', 0), (7, 2, 'Deploy', 0);
ãããŠãORMã䜿çšããŠãã®ããŒã¿ã«ã¢ã¯ã»ã¹ã§ããŸãã ããã»ããµã«
ormã¢ã¯ã·ã§ã³ã远å ããŸãã
localhost / quickstart / ormã«ç§»åãããšããããžã§ã¯ãããŒã¿ãå«ãJSONå¿çã衚瀺ãããŸãã
æ°ããORMã®å¯èœæ§ã詳ãã調ã¹ãåã«ã1察å€ã®é¢ä¿ãèšå®ããŸã
ãããžã§ã¯ããšãã®ã¿ã¹ã¯ã®éã
ãšã³ãã£ãã£
ãšã³ãã£ãã£ã®äœæã倿Žãåé€ã¯éåžžã«çŽæçã§ãã
$orm = $this->builder->components->orm();
ãåãåãã
ORMã¯ãšãªã§å¯èœã«ãªã£ããã®ã®ã»ãã®äžéšã次ã«ç€ºããŸãã
$orm = $this->builder->components->orm();
PHPixie ORMã«ã¯ãããŒã¿ããŒã¹ã¯ãšãªã®æ°ãæžããããã®å€ãã®æé©åãå«ãŸããŠããŸãã
ããšãã°ã1ã€ã®ã¯ãšãªã§è€æ°ã®ã¿ã¹ã¯ããããžã§ã¯ãã«ãªã³ã¯ã§ããŸãã
$orm = $this->builder->components->orm();
ãšã³ãã£ãã£ãæäœãã代ããã«ã¯ãšãªã䜿çšãããšãã¯ãšãªã®æ°ãåçã«æžå°ããŸãã ããã¯ãå€å¯Ÿå€ã®é¢ä¿ã§ç¹ã«é¡èã§ãã MongoDBãµããŒããšåæ§ã«ãä»ã®ORMã¯ãããèš±å¯ããŸããã
ãšã³ãã£ãã£å±é
ã»ãšãã©ã®å Žåãã¢ãã«ã¯ã©ã¹ãæ¡åŒµããŠæ©èœã远å ããå¿
èŠããããŸãã ä»ã®å®è£
ã§ã¯ãããã«ãããORMèªäœããã³ããŒã¿ããŒã¹ãšããžãã¯ã坿¥ã«æ¥ç¶ãããŸãã PHPixieã§ã¯ããšã³ãã£ãã£ãè£
食ããå®å
šã«ç¬ç«ããã©ãããŒãèšè¿°ããããšãã§ãããããORMããå®å
šã«ç¬ç«ããŠããŸãã ããã¯ããã¹ãã®èšè¿°ãã¯ããã«ç°¡åã«ãªããã³ããããŸãã¯ãã¹ãããŒã¿ãå¿
èŠãªãããšãæå³ããŸãã
ç°¡åãªã©ãããŒã¯æ¬¡ã®ãšããã§ãã
ãã³ãã«ã«ç»é²ããŸãïŒ
ãã¹ãŠãä»ç§ãã¡ã¯è©Šãããšãã§ããŸãïŒ
ãªã¯ãšã¹ããšãªããžããªã®ã©ãããŒã宣èšããŠãæ©èœã远å ãŸãã¯å€æŽããããšãã§ããŸãã ããšãã°ãäžåºŠã«è€æ°ã®æ¡ä»¶ã远å ããã¡ãœãããã¯ãšãªã«è¿œå ã§ããŸãã
ãã£ãšãããŸãïŒ
ãã®ã¬ã€ãã®ã³ãŒã
ã¯githubã§å
¥æã§ããŸãã ãŸãã宿ãã
ãã¢ãããžã§ã¯ãã«ç²Ÿéããããšãã§ããŸããããã¯åãªãã¿ã¹ã¯ãã©ãã«ãŒã§ãã
ãã¹ãŠããã§ã«ç§ã«åã£ãŠããŸããïŒãã³ãã«ã·ã¹ãã ãããã»ããµãžã®ã¢ãããŒããããã³ãã®ä»ã®å€æŽãåé·ã§ãããšæããã2çªç®ã®ããŒãžã§ã³ã®ããã«äœæ¥ãããå Žåãå¿é
ããªãã§ãåãã¢ãããŒããããã«äœ¿çšã§ããŸãã
- / bundles / app / folder以å€ã®ãã¹ãŠãå¿ãã
- ãã³ãã«ã䜿çšããªãããã/ webãã©ã«ããŒã«ã·ã§ãŒãã«ãããäœæããã2çªç®ã®ããŒãžã§ã³ã§è¡ã£ãããã«å€§èã«Webãã¡ã€ã«ããã³ãã«ã«å
¥ããŸãã åŸã§æ°ãå€ãã£ãŠãã³ãã«ã䜿çšãããå Žåã¯ã/ webãã/ bundles / app / webã«ãã¡ã€ã«ã転éããã ãã§ãã ãã®æãŸã§æ°ã«ããªãã§ãã ããã
- æšæºã¯ã©ã¹ããããã«æ¡åŒµããããšã«ããã2çªç®ã®ããŒãžã§ã³ã®åäœãç°¡åã«å®çŸã§ããŸãã
HTTPProcessorã«ããã»ããµãç»é²ããå¿
èŠãªããåå空éã«åŸã£ãŠããã»ããµãèªåçã«æ§ç¯ããŸãã
ã³ã³ãããŒã©ãŒã®å Žåã®ããã«ãbeforeïŒïŒããã³afterïŒïŒã¡ãœããã远å ããŸãã 远å ã®ããŒãã¹ãšããŠãbeforeïŒïŒãäœããã®çµæãè¿ãå Žåãã¢ã¯ã·ã§ã³èªäœã¯çºçããªããªããŸãã
çµãã
ããã§ãPHPixie 3ã§ã®äœæ¥ãéå§ããããã®ãã¹ãŠã®æºåãæŽããŸãããããµã€ãäžãšããããã®äž¡æ¹ã«æªèªã®ããã¥ã¡ã³ãããŸã ãããããããŸã ã»ãšãã©ã®ã³ã³ããŒãã³ãã«ã¯ãæŽæ°ããããµã€ããŸãã¯ãã·ã¢èªçã®ç¬èªã®ããã¥ã¡ã³ããæ¢ã«ãããŸãã ãã¹ãŠã®ã³ã³ããŒãã³ãã¯ãã¬ãŒã ã¯ãŒã¯ãªãã§äœ¿çšã§ã
ããã¹ãã§
100ïŒ
ã«ããŒãããŠãããã»ãšãã©ãã¹ãŠã
CodeClimateã®æå€§å質ã¡ããªãã¯ãåããŠããŸãã
ã¡ãªã¿ã«ããã¬ãŒã ã¯ãŒã¯ãµã€ããæŽæ°ãããããçå£ãªãã¶ã€ã³ã«ãªã£ããããããŒã ãªãŒããŒããã®äžã«ã ãæžãããã«èª¬åŸãããããªããŸããã ãŸãããŸã 質åãããå Žåã¯
ããã£ããã§ã»ãŒåžžã«ç¢ºèªã§ããŸãã
ãã³ãããŒã¯
