コード例 #1
0
 /**
  * @param $object
  * @param array $data
  * @return mixed
  */
 public static function populate($object, array $data = null)
 {
     if (!$data) {
         return $object;
     }
     $filter = new \Zend\Filter\Word\UnderscoreToCamelCase();
     foreach ($data as $key => $val) {
         $setter = 'set' . $filter->filter($key);
         if (method_exists($object, $setter)) {
             $object->{$setter}($val);
         }
     }
     return $object;
 }
コード例 #2
0
ファイル: AbstractStep.php プロジェクト: Tribalx/Wizard
 /**
  * {@inheritDoc}
  */
 public function setFromArray($options)
 {
     if (!is_array($options) && !$options instanceof Traversable) {
         throw new Exception\InvalidArgumentException(sprintf('Parameter provided to %s must be an array or Traversable', __METHOD__));
     }
     foreach ($options as $key => $value) {
         $filter = new \Zend\Filter\Word\UnderscoreToCamelCase();
         $method = 'set' . ucfirst($filter->filter($key));
         if (!method_exists($this, $method)) {
             continue;
         }
         $this->{$method}($value);
     }
     return $this;
 }
コード例 #3
0
 protected function camel($name)
 {
     $camel = new \Zend\Filter\Word\UnderscoreToCamelCase();
     return $camel->__invoke($name);
 }
コード例 #4
0
 /** \Zend\Filter\DashToCamelCase() =>  */
 public function index24Action()
 {
     $filter = new \Zend\Filter\Word\UnderscoreToCamelCase();
     $input = 'Zend_framework_is-Easy';
     $output = $filter->filter($input);
     echo "<h3>" . $input . "</h3>";
     echo "<h3>" . $output . "</h3>";
     return false;
 }
コード例 #5
0
 public function controllerAction()
 {
     $config = $this->getServiceLocator()->get('config');
     $moduleName = $config['VisioCrudModeler']['params']['moduleName'];
     $modulePath = $config['VisioCrudModeler']['params']['modulesDirectory'];
     $db = $this->getServiceLocator()->get('Zend\\Db\\Adapter\\Adapter');
     $dataSourceDescriptor = new DbDataSourceDescriptor($db, 'K08_www_biedronka_pl');
     $listDataSets = $dataSourceDescriptor->listDataSets();
     $filter = new \Zend\Filter\Word\UnderscoreToCamelCase();
     foreach ($listDataSets as $d) {
         $className = $filter->filter($d) . 'Controller';
         $file = new FileGenerator();
         $file->setFilename($className);
         $file->setNamespace($moduleName)->setUse('Zend\\Mvc\\Controller\\AbstractActionController');
         $foo = new ClassGenerator();
         $docblock = DocBlockGenerator::fromArray(array('shortDescription' => 'Sample generated class', 'longDescription' => 'This is a class generated with Zend\\Code\\Generator.', 'tags' => array(array('name' => 'version', 'description' => '$Rev:$'), array('name' => 'license', 'description' => 'New BSD'))));
         $foo->setName($className);
         $foo->setExtendedClass('Base' . $className);
         $foo->setDocblock($docblock);
         $file->setClass($foo);
         echo '<pre>';
         echo htmlentities($file->generate());
         echo '</pre>';
         $fileView = new FileGenerator();
         $body = "echo '{$className}';";
         $fileView->setBody($body);
         echo '<pre>';
         echo htmlentities($fileView->generate());
         echo '</pre>';
     }
     echo '<hr />';
     foreach ($listDataSets as $d) {
         $className = 'Base' . $filter->filter($d) . 'Controller';
         $fileBase = new FileGenerator();
         $fileBase->setFilename($className);
         $fileBase->setNamespace($moduleName)->setUse('Zend\\Mvc\\Controller\\AbstractActionController');
         $fooBase = new ClassGenerator();
         $docblockBase = DocBlockGenerator::fromArray(array('shortDescription' => 'Sample generated class', 'longDescription' => 'This is a class generated with Zend\\Code\\Generator.', 'tags' => array(array('name' => 'version', 'description' => '$Rev:$'), array('name' => 'license', 'description' => 'New BSD'))));
         $fooBase->setName($className);
         $index = new MethodGenerator();
         $index->setName('indexAction');
         $create = new MethodGenerator();
         $create->setName('createAction');
         $read = new MethodGenerator();
         $read->setName('readAction');
         $update = new MethodGenerator();
         $update->setName('updateAction');
         $delete = new MethodGenerator();
         $delete->setName('deleteAction');
         $fooBase->setExtendedClass('AbstractActionController');
         //$fooBase->set
         $fooBase->setDocblock($docblock);
         $fooBase->addMethodFromGenerator($index);
         $fooBase->addMethodFromGenerator($create);
         $fooBase->addMethodFromGenerator($read);
         $fooBase->addMethodFromGenerator($update);
         $fooBase->addMethodFromGenerator($delete);
         $fileBase->setClass($fooBase);
         echo '<pre>';
         echo htmlentities($fileBase->generate());
         echo '</pre>';
     }
     exit;
 }
コード例 #6
0
 public function camel($name)
 {
     $camel = new \Zend\Filter\Word\UnderscoreToCamelCase();
     return lcfirst($camel->__invoke($name));
 }