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


PHP FileGenerator::getUses方法代码示例

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


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

示例1: replaceNamespace

 /**
  * Search for unnecessary namespace imports and definitions and replace occurrences.
  *
  * @param FileGenerator $fileGenerator
  * @return string Generated code
  */
 public function replaceNamespace(FileGenerator $fileGenerator)
 {
     $uses = [];
     $search = [];
     $replace = [];
     foreach ($fileGenerator->getUses() as $import) {
         $namespace = trim(substr($import[0], 0, strrpos($import[0], '\\')), '\\');
         if ($fileGenerator->getNamespace() !== $namespace) {
             $uses[] = $import;
         }
         $name = trim(substr($import[0], strrpos($import[0], '\\')), '\\');
         $search[] = '\\' . $import[0];
         $search[] = ', \\' . $import[0];
         $replace[] = $name;
         $replace[] = ', ' . $name;
     }
     // workaround to reset use imports
     $reflection = new \ReflectionClass($fileGenerator);
     $property = $reflection->getProperty('uses');
     $property->setAccessible(true);
     $property->setValue($fileGenerator, $uses);
     $code = $fileGenerator->generate();
     return str_replace($search, $replace, $code);
 }
开发者ID:proophsoftware,项目名称:prooph-cli,代码行数:30,代码来源:ReplaceNamespaceTrait.php

示例2: testSetUsesWithGetUses

 public function testSetUsesWithGetUses()
 {
     $file = new FileGenerator();
     $uses = array('Your\\Bar', 'My\\Baz', array('use' => 'Another\\Baz', 'as' => 'Baz2'));
     $file->setUses($uses);
     $file->setUses($file->getUses());
     $generated = $file->generate();
     $this->assertContains('use My\\Baz;', $generated);
     $this->assertContains('use Your\\Bar;', $generated);
     $this->assertContains('use Another\\Baz as Baz2;', $generated);
 }
开发者ID:pnaq57,项目名称:zf2demo,代码行数:11,代码来源:FileGeneratorTest.php

示例3: removeUseFunctionsFromBackslashing

 /**
  * If a method exists under a namespace and has been aliased, or has been imported, don't replace.
  *
  * @param FileGenerator $generator
  * @param array         $functions
  *
  * @return array
  */
 private function removeUseFunctionsFromBackslashing(FileGenerator $generator, array $functions)
 {
     foreach ($generator->getUses() as $namespacedFunction) {
         list($functionOrClass) = $namespacedFunction;
         if (\function_exists($functionOrClass)) {
             $function = \explode("\\", $functionOrClass);
             $function = \array_pop($function);
             if (!empty($functions[$function])) {
                 unset($functions[$function]);
             }
         }
     }
     return $functions;
 }
开发者ID:nilportugues,项目名称:php_backslasher,代码行数:22,代码来源:FileEditor.php


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