2013-04-16 6 views
3

В Symfony coding standards он говорит: >Symfony стандартов кодирования - аргументы и параметры

Использование верблюжье, не подчеркивание, для переменных, функций и методов, имен аргументов;

Используйте символы подчеркивания для имен опций и имен параметров;

В этом контексте В чем разница между параметрами и аргументами?

Я думаю, что я понимаю часть имен опций (т. Е. Когда у вас есть массив $ options, как в примере кода на этой странице), но что квалифицируется как «параметр»?

ответ

3

Я думаю, что когда значения используются как опции (имеют смысл), в общем.

Например, в формах:

public function getDefaultOptions(array $options) 
{ 
    return array(
     'validation_groups' => array('registration') 
    ); 
} 

В конфигурации пучка:

class Configuration implements ConfigurationInterface 
{ 
    public function getConfigTreeBuilder() 
    { 
     $treeBuilder = new TreeBuilder(); 
     $rootNode = $treeBuilder->root('acme_hello'); 

     $rootNode 
      ->children() 
      ->scalarNode('my_type')->defaultValue('bar')->end() 
      ->end(); 

     return $treeBuilder; 
    } 
} 

В параметрах контейнера:

# app/config/config.yml 
parameters: 
    my_mailer.class:  Acme\HelloBundle\Mailer 
    my_mailer.transport: sendmail 

services: 
    my_mailer: 
     class:  "%my_mailer.class%" 
     arguments: ["%my_mailer.transport%"] 
+0

Ах ... так config.yml (или другой .yml-файл) являются параметрами. Спасибо! – caponica

+0

@caponica yes, в основном файлы 'config.yml' используются для конфигурации пакетов (ассемблер, безопасность и даже ваши собственные). Обычно вы определяете параметры (вместе с их значениями) в 'parameters.yml' и используете эти параметры с помощью нотации'% ...% 'в ваших конфигурационных файлах. – gremo

Смежные вопросы