当前位置: 首页>>代码示例>>PHP>>正文


PHP ControllerCollection::flush方法代码示例

本文整理汇总了PHP中Silex\ControllerCollection::flush方法的典型用法代码示例。如果您正苦于以下问题:PHP ControllerCollection::flush方法的具体用法?PHP ControllerCollection::flush怎么用?PHP ControllerCollection::flush使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Silex\ControllerCollection的用法示例。


在下文中一共展示了ControllerCollection::flush方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: flush

 /**
  * When mounting a controller class with a prefix most times you have a route with a blank path.
  * That is the only route that flushes to include an (unwanted) trailing slash.
  *
  * This fixes that trailing slash.
  *
  * @param string $prefix
  * @return \Symfony\Component\Routing\RouteCollection
  */
 public function flush($prefix = '')
 {
     $routes = parent::flush($prefix);
     foreach ($routes->all() as $name => $route) {
         if (substr($route->getPath(), -1) === '/') {
             $route->setPath(rtrim($route->getPath(), '/'));
         }
     }
     return $routes;
 }
开发者ID:gmo,项目名称:common,代码行数:19,代码来源:ControllerCollection.php

示例2: testConflictingRouteNames

 public function testConflictingRouteNames()
 {
     $controllers = new ControllerCollection();
     $mountedRootController = new Controller(new Route('/'));
     $controllers->add($mountedRootController);
     $mainRootController = new Controller(new Route('/'));
     $mainRootController->bindDefaultRouteName('main_');
     $controllers->flush();
     $this->assertNotEquals($mainRootController->getRouteName(), $mountedRootController->getRouteName());
 }
开发者ID:robo47,项目名称:Silex,代码行数:10,代码来源:ControllerCollectionTest.php

示例3: testUniqueGeneratedRouteNames

 public function testUniqueGeneratedRouteNames()
 {
     $controllers = new ControllerCollection(new Route());
     $controllers->match('/a-a', function () {
     });
     $controllers->match('/a_a', function () {
     });
     $routes = $controllers->flush();
     $this->assertCount(2, $routes->all());
     $this->assertEquals(array('_a_a', '_a_a_'), array_keys($routes->all()));
 }
开发者ID:johnWIll17,项目名称:silex-blog,代码行数:11,代码来源:ControllerCollectionTest.php

示例4: testControllerFreezing

 public function testControllerFreezing()
 {
     $routes = new RouteCollection();
     $controllers = new ControllerCollection($routes);
     $fooController = new Controller(new Route('/foo'));
     $fooController->bind('foo');
     $controllers->add($fooController);
     $barController = new Controller(new Route('/bar'));
     $barController->bind('bar');
     $controllers->add($barController);
     $controllers->flush();
     try {
         $fooController->bind('foo2');
         $this->fail();
     } catch (ControllerFrozenException $e) {
     }
     try {
         $barController->bind('bar2');
         $this->fail();
     } catch (ControllerFrozenException $e) {
     }
 }
开发者ID:nooks,项目名称:Silex,代码行数:22,代码来源:ControllerCollectionTest.php

示例5: testRoutesFactoryInConstructor

 public function testRoutesFactoryInConstructor()
 {
     $app = new Application();
     $app['routes_factory'] = $app->factory(function () {
         return new RouteCollectionSubClass2();
     });
     $controllers = new ControllerCollection(new Route(), $app['routes_factory']);
     $routes = $controllers->flush();
     $this->assertInstanceOf('Silex\\Tests\\RouteCollectionSubClass2', $routes);
 }
开发者ID:nix5longhorn,项目名称:Silex,代码行数:10,代码来源:ControllerCollectionTest.php

示例6: testUniqueGeneratedRouteNamesAmongNestedMounts

 public function testUniqueGeneratedRouteNamesAmongNestedMounts()
 {
     $controllers = new ControllerCollection(new Route());
     $controllers->mount('/root-a', $rootA = new ControllerCollection(new Route()));
     $controllers->mount('/root_a', $rootB = new ControllerCollection(new Route()));
     $rootA->mount('/tree', $treeA = new ControllerCollection(new Route()));
     $rootB->mount('/tree', $treeB = new ControllerCollection(new Route()));
     $treeA->match('/leaf', function () {
     });
     $treeB->match('/leaf', function () {
     });
     $routes = $controllers->flush();
     $this->assertCount(2, $routes->all());
     $this->assertEquals(array('_root_a_tree_leaf', '_root_a_tree_leaf_'), array_keys($routes->all()));
 }
开发者ID:willianmano,项目名称:minicurso_phpconference2016,代码行数:15,代码来源:ControllerCollectionTest.php


注:本文中的Silex\ControllerCollection::flush方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。